{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Logistic 回归&SVM支持向量机"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# 首先 import 必要的模块\n",
    "import pandas as pd \n",
    "import numpy as np\n",
    "\n",
    "from sklearn.model_selection import GridSearchCV\n",
    "from sklearn.metrics import log_loss  \n",
    "from sklearn.metrics import accuracy_score \n",
    "from sklearn.linear_model import LogisticRegression\n",
    "\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1、读取数据 "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Pregnancies</th>\n",
       "      <th>Glucose</th>\n",
       "      <th>BloodPressure</th>\n",
       "      <th>SkinThickness</th>\n",
       "      <th>Insulin</th>\n",
       "      <th>BMI</th>\n",
       "      <th>DiabetesPedigreeFunction</th>\n",
       "      <th>Age</th>\n",
       "      <th>Outcome</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>6</td>\n",
       "      <td>148</td>\n",
       "      <td>72</td>\n",
       "      <td>35</td>\n",
       "      <td>0</td>\n",
       "      <td>33.6</td>\n",
       "      <td>0.627</td>\n",
       "      <td>50</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1</td>\n",
       "      <td>85</td>\n",
       "      <td>66</td>\n",
       "      <td>29</td>\n",
       "      <td>0</td>\n",
       "      <td>26.6</td>\n",
       "      <td>0.351</td>\n",
       "      <td>31</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>8</td>\n",
       "      <td>183</td>\n",
       "      <td>64</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>23.3</td>\n",
       "      <td>0.672</td>\n",
       "      <td>32</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1</td>\n",
       "      <td>89</td>\n",
       "      <td>66</td>\n",
       "      <td>23</td>\n",
       "      <td>94</td>\n",
       "      <td>28.1</td>\n",
       "      <td>0.167</td>\n",
       "      <td>21</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0</td>\n",
       "      <td>137</td>\n",
       "      <td>40</td>\n",
       "      <td>35</td>\n",
       "      <td>168</td>\n",
       "      <td>43.1</td>\n",
       "      <td>2.288</td>\n",
       "      <td>33</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Pregnancies  Glucose  BloodPressure  SkinThickness  Insulin   BMI  \\\n",
       "0            6      148             72             35        0  33.6   \n",
       "1            1       85             66             29        0  26.6   \n",
       "2            8      183             64              0        0  23.3   \n",
       "3            1       89             66             23       94  28.1   \n",
       "4            0      137             40             35      168  43.1   \n",
       "\n",
       "   DiabetesPedigreeFunction  Age  Outcome  \n",
       "0                     0.627   50        1  \n",
       "1                     0.351   31        0  \n",
       "2                     0.672   32        1  \n",
       "3                     0.167   21        0  \n",
       "4                     2.288   33        1  "
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 读取数据\n",
    "data = pd.read_csv(\"diabetes.csv\")\n",
    "data.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 768 entries, 0 to 767\n",
      "Data columns (total 9 columns):\n",
      "Pregnancies                 768 non-null int64\n",
      "Glucose                     768 non-null int64\n",
      "BloodPressure               768 non-null int64\n",
      "SkinThickness               768 non-null int64\n",
      "Insulin                     768 non-null int64\n",
      "BMI                         768 non-null float64\n",
      "DiabetesPedigreeFunction    768 non-null float64\n",
      "Age                         768 non-null int64\n",
      "Outcome                     768 non-null int64\n",
      "dtypes: float64(2), int64(7)\n",
      "memory usage: 54.1 KB\n"
     ]
    }
   ],
   "source": [
    "data.info()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2、数据探索"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "将0值特征用中值填补，对年龄特征用指数函数替代"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xebba0f0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.countplot(data.Pregnancies);\n",
    "plt.xlabel('Pregnancies');"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "data = data[data.Pregnancies < 15]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xf341e10>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure()\n",
    "sns.distplot(data.Glucose.values, bins=30, kde=True)\n",
    "plt.xlabel('Glucose', fontsize=12)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "Glucose_median = round(data[data.Glucose>0]['Glucose'].median()) \n",
    "data['Glucose'].replace(0,Glucose_median, inplace = True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYkAAAENCAYAAAD6/JlzAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzt3Xl8HNWV6PHf6da+Sy3Jsi1b8oYX\nwBiwzQ4JZAECOAtJWJKQN8wjyYRP8rK8DLwMTJJJJo/ZmMlkeWECCWGGJWECcYCwhxDAGNtg492W\nbUnWZu372t3n/dEl0hZqqSW1VC31+X4+/XF31a2q02V1n657b90rqooxxhgzGo/bARhjjIlfliSM\nMcZEZEnCGGNMRJYkjDHGRGRJwhhjTESWJIwxxkRkScIYY0xEliSMMcZEZEnCGGNMREluBzARhYWF\nWl5e7nYYxhgzq+zYsaNZVYsms+2sShLl5eVs377d7TCMMWZWEZGqyW5r1U3GGGMisiRhjDEmIksS\nxhhjIrIkYYwxJiJLEsYYYyKyJGGMMSYiSxLGGGMisiRhjDEmIksSxhhjIppVd1wbM5c9uLV6yvu4\n4ZzFMYjEmD+zKwljjDERWZIwxhgTkSUJY4wxEVmbhDFx7GhTN/Ud/QRVyUlLZm1pLiLidlgmgViS\nMCYOqSovHmzkhf2NJy0/3NjNR85ciNdjicLMDEsSxsQZfzDIb96sZefxds5clMcVp88n2SO8UtHM\nCwca6eof4oZzFpOa5HU7VJMArE3CmDjzhwON7DzezvvXzOPas0vJSk0iNdnLZavn8dEzF1LR2M2z\ne0+4HaZJEFElCRG5XEQOikiFiNw2yvpUEXnEWb9VRMqd5RtFZKfz2CUiH4l2n8YkovqOPv54qIkz\nF+Xx3pXF72p/WF9ewIbyArYea6G5a8ClKE0iGTdJiIgX+BFwBbAGuF5E1owodjPQpqrLgbuBu5zl\ne4D1qroOuBz4qYgkRblPYxJKIKj85s1a0lOS+NDp8yOWu2x1MUleD0/vbZjB6EyiiuZKYiNQoapH\nVXUQeBjYNKLMJuB+5/mjwGUiIqraq6p+Z3kaoBPYpzEJ5bUjzdS293HNGQvISI3cXJidlswlpxSx\nr76TY809MxihSUTRJImFwPGw1zXOslHLOEmhA/ABiMg5IrIX2A183lkfzT5xtr9FRLaLyPampqYo\nwjVm9uke8PPSwSZWzsvmtAU545a/YFkhOWlJPGtXE2aaRZMkRutrp9GWUdWtqnoqsAG4XUTSotwn\nzvb3qOp6VV1fVFQURbjGzD4PbKmibyjAZavf3Q4xmpQkDxcsL6SqtZfGzv4ZiNAkqmiSRA2wKOx1\nKVAXqYyIJAG5QGt4AVXdD/QAp0W5T2MSQt9ggJ/96SgrirMozc+Iert1i/LwCLxZ3TaN0ZlEF02S\n2AasEJElIpICXAdsHlFmM3CT8/xa4EVVVWebJAARKQNWApVR7tOYhPDQG9W09Azy3pXFE9ouOy2Z\nlfOyeau6nUBw1AtxY6Zs3CThtCHcCjwD7Ad+pap7ReQ7InKNU+xewCciFcBXgeEurRcCu0RkJ/AY\n8Feq2hxpn7F8Y8bMBgP+AD99+QjnLCmgvDBzwtufXZZP14Cfwye6piE6Y6K841pVnwKeGrHszrDn\n/cDHR9nuAeCBaPdpTKJ5ek8DJzoHuOtja6lrn3jbwsqSHDJTvOyobmPV/PEbvI2ZKLvj2hgX/efr\nVZT5Mrh4xeQ6ZXg9wrpFeRyo76JnwD/+BsZMkCUJY1yyv76TbZVtfOqcMjxTGLBv3eJ8AqocaLAq\nJxN7liSMccl/vl5FapKHa88undJ+FuSmkZOWxIGGzhhFZsyfWZIwxgVd/UM8/lYtV61dQH5mypT2\nJSKsKsnhcGM3A/5AjCI0JsSShDEueHxnHT2DAT59XllM9reqJJtBf5A3jrWOX9iYCbAkYYwLHt1+\nnFUl2ZxRmhuT/S0rziLZK++apMiYqbIkYcwMO3yii101HVx7dmnMpiJN9npYVpTFCwdOoGo31pnY\nsSRhzAx79M0avB5h07pRx7SctFUlORxv7eNwY3dM92sSmyUJY2ZQIKg8/lYt7zmliKLs1Jjue2VJ\nNgDP77dZ60zsWJIwZga9UtHMic6BKXd7HU1uejKrSrJ55XBzzPdtEpclCWNm0H/vqCE3PZlLV09s\nML9oXbC8kB1VbfQPWVdYExuWJIyZIT0Dfp7d18DVZ8wnNck7Lcc4b6mPAX+Qt6rbp2X/JvFENcCf\nMWZsD26tHrdMdloS/UNBrl67YNriqG7tRYB7Xj4acWrTG85ZPG3HN3OPXUkYM0OefLue4uxU1pcX\nTNsx0pK9LMxP52iz9XAysWFJwpgZMDAU4A8HG7ny9Pl4pzCYXzSWFmZR09rHoD84rccxicGShDEz\nYH9DFwP+IB9aO3/aj7WsKJOAKlUto1c3GTMRliSMmQG7azsoyUnj7MX5036sMl8mXhGONFmSMFNn\nScKYadY/FODQiS6uPH3+lOaNiFZKkofSAmuXMLFhScKYaXawoYtAULny9JIZO+bSwixq2/oYsPsl\nzBRZkjBmmu1v6CQzxcuZM1DVNKzcl4ECx9v6ZuyYZm6yJGHMNAoElUMnulhZkjPtvZrCLSrIQMAa\nr82UWZIwZhpVtfbQPxRklTP43kxJS/YyLyeNqtbeGT2umXssSRgzjQ7Ud+H1CCuKs2b82GW+DI63\n9hK0+SXMFESVJETkchE5KCIVInLbKOtTReQRZ/1WESl3lr9fRHaIyG7n30vDtnnJ2edO5zE9I54Z\n46IDDV0sLcwkNXl6xmoaS5kvgwF/kIaO/hk/tpk7xk0SIuIFfgRcAawBrheRNSOK3Qy0qepy4G7g\nLmd5M3C1qp4O3AQ8MGK7G1V1nfOweRfNnNLcPUBz98A78zzMtLKCTACrcjJTEs2VxEagQlWPquog\n8DCwaUSZTcD9zvNHgctERFT1LVWtc5bvBdJEJLYzrRgTpw7UdwKwuiTHlePnZSSTk5ZEtTVemymI\nJkksBI6Hva5xlo1aRlX9QAfgG1HmY8BbqjoQtuznTlXTHRKryX6NiROHTnRTnJ1KfmaKK8cXERb7\nMu1KwkxJNElitC/vkS1hY5YRkVMJVUF9Lmz9jU411EXO49OjHlzkFhHZLiLbm5qaogjXGPf5A0Eq\nW3pY7kKDdbiyggzae4fo6BtyNQ4ze0WTJGqARWGvS4G6SGVEJAnIBVqd16XAY8BnVPXI8AaqWuv8\n2wU8SKha611U9R5VXa+q64uKiqJ5T8a4rrqtF39QWVbkcpLwZQB2v4SZvGiSxDZghYgsEZEU4Dpg\n84gymwk1TANcC7yoqioiecCTwO2q+upwYRFJEpFC53kycBWwZ2pvxZj4caSxBwGWFGa6Gsf83HSS\nvWJVTmbSxk0SThvDrcAzwH7gV6q6V0S+IyLXOMXuBXwiUgF8FRjuJnsrsBy4Y0RX11TgGRF5G9gJ\n1AL/Ecs3ZoybjjZ1szA/nTQXur6G83qE0vwMqlssSZjJiWr6UlV9CnhqxLI7w573Ax8fZbvvAt+N\nsNuzow/TmNljwB/geFsvF62Ij+rRMl8GLx9qYsAfmLa5tc3cZXdcGxNjlc29BBXX2yOGlRVkElSo\nscH+zCREdSVhjInekaZuvB5hcUHGScsf3FrtSjzDcVS19MZN4jKzh11JGBNjR5u6WVyQQUpSfHy8\n0lO8FGenUt1qPZzMxMXHX7Exc0TfYID6jn6WFrnbq2mkMl8m1TbYn5kESxLGxFB1ay8KlPviLUlk\n0D8UpLFzYPzCxoSxJGFMDFW39iJAaX6626GcpGy4XcKqnMwEWZIwJoaqW3soyU2Lu66mBZkpZKUm\n2f0SZsIsSRgTI0FVjrf1vatXUzwQEcp8GVTa8BxmgixJGBMjJzr7GfQH4zJJQKjKqa13iMZOm4TI\nRM+ShDExUu2Mj1QWZ43Ww4bj2l7V5nIkZjaxJGFMjFS39JKZmkR+RrLboYxqfl4ayV5he6UlCRM9\nSxLGxEh1ay9lBRnE6/xZSR4PpfkZ7KhqdTsUM4tYkjAmBroH/LT0DMZte8SwsoIM9tR10jvodzsU\nM0tYkjAmBo477RGL4j1J+DIIBJWdx9vdDsXMEpYkjImB4629eCT+bqIbaXFBJiKww9olTJQsSRgT\nA3UdfRRnp5Hsje+PVHqKl1OKs62Hk4lafP9FGzMLqCq1bX0szIvvq4hhZ5fn82ZVG4GgDfZnxmdJ\nwpgpqu/op2cwwIK8NLdDicr6sny6BvwcOtHldihmFrAkYcwU7antAJg1VxIbygsAu6nORMeShDFT\ntKe2AwFKcmdHkijNT6c4O5UdlXa/hBmfJQljpmh3bQdF2alxMxPdeESE9eX5bLMeTiYKs+Ov2pg4\ntqeuc9ZUNQ07u6yA2vY+GjpssD8zNksSxkzBic5+mroGWDDLksSG8nwAttsQHWYcliSMmYLZ1mg9\nbPX8HNKTvTbYnxlXVElCRC4XkYMiUiEit42yPlVEHnHWbxWRcmf5+0Vkh4jsdv69NGybs53lFSLy\nA4nXUdGMGcPu2g5EQiOszibJXg/rFuXZlYQZ17hJQkS8wI+AK4A1wPUismZEsZuBNlVdDtwN3OUs\nbwauVtXTgZuAB8K2+QlwC7DCeVw+hfdhjCv21HawtDAz7qYrjcb68nz213fRM2CD/ZnIormS2AhU\nqOpRVR0EHgY2jSizCbjfef4ocJmIiKq+pap1zvK9QJpz1TEfyFHVLaqqwC+BD0/53Rgzw/bWdXLq\ngly3w5iU9eUFNtifGVc0SWIhcDzsdY2zbNQyquoHOgDfiDIfA95S1QGnfM04+wRARG4Rke0isr2p\nqSmKcI2ZGe29g9R39LNmQY7boUzKmYvzEIFtdr+EGUM0SWK0toKRg76MWUZETiVUBfW5CewztFD1\nHlVdr6rri4qKogjXmJlxoCE0rMWqkmyXI5mcnLRkVpfk8MYxSxImsmiSRA2wKOx1KVAXqYyIJAG5\nQKvzuhR4DPiMqh4JK186zj6NiWsH6juBUE+h2ercpT52VLUx4A+4HYqJU9EkiW3AChFZIiIpwHXA\n5hFlNhNqmAa4FnhRVVVE8oAngdtV9dXhwqpaD3SJyLlOr6bPAL+d4nsxZkYdaOgiPyOZ4uxUt0OZ\ntHOXFjDgD7LreIfboZg4NW6ScNoYbgWeAfYDv1LVvSLyHRG5xil2L+ATkQrgq8BwN9lbgeXAHSKy\n03kUO+u+APwMqACOAL+P1ZsyZibsb+hiVUlO3M5pHY2NSwoQgdePtrgdiolTSdEUUtWngKdGLLsz\n7Hk/8PFRtvsu8N0I+9wOnDaRYI2JF4Ggcqihi+s2Lhq/cBzLy0hhdUkOrx9t4UuXrXA7HBOH7I5r\nYyahurWXvqEAq0tmb3vEsPOWWbuEiSyqKwljzMlmc6P1g1urT3o96A8y4A/yT88cYklhJgA3nLPY\njdBMHLIrCWMmYX9DFx6BFfOy3A5lysp9mQhwrLnb7VBMHLIrCWOiMPLX93P7TuDLTOU3b9a6FFHs\npKd4mZ+bxtHmHi4dv7hJMHYlYcwkNHT0UZI7uwb1G8uSwkyqW3oZCgTdDsXEGUsSxkxQ/1CAtt6h\nOZUklhVl4Q8q1a29bodi4owlCWMm6ERnaDa3kpy5kyTKCzPxCBxpsnYJczJLEsZMUMNwkphDVxJp\nyV5K8zM40mhJwpzMkoQxE9TQ0U9qkoe89GS3Q4mpZUWZ1LT10T9k90uYP7MkYcwENXT0U5KbNquH\n4xjNsqIsFDjW3ON2KCaOWJIwZgJUlYbOfubPoaqmYYsLMkj2ChXWLmHCWJIwZgLae4cY8AcpyUl3\nO5SYS/J6KPNlWruEOYklCWMmYC42WodbVpRFY9cAjV39bodi4oQlCWMmoL4j9OU5L2f2ziExlmVF\nobGbthyxocNNiCUJYyagobOfgswUUpO8bocyLRbkpZOW7OHVima3QzFxwpKEMRPQ0NE/p26iG8kj\nwtLCLF6taEF11GnnTYKxJGFMlAb9QVq6B+Zse8SwZcVZ1Lb32RAdBrAkYUzUGrv6UebWcByjGW6X\neLXC2iWMJQljotbgNFrPxXskwhVlpTIvJ5VXj1i7hLEkYUzU6jv7SfF6yM9McTuUaSUiXLCskC1H\nWggGrV0i0VmSMCZKDR39zMtJxTPHhuMYzQXLC2ntGeRAQ5fboRiXWZIwJgqq6ozZNPfutB7NBcsL\nAXjNqpwSniUJY6LQ2e+nbygw53s2DSvJTWNpUabdL2GiSxIicrmIHBSRChG5bZT1qSLyiLN+q4iU\nO8t9IvIHEekWkR+O2OYlZ587nUdxLN6QMdNhuNF6rvdsCnfBskLeONZqU5omuHGThIh4gR8BVwBr\ngOtFZM2IYjcDbaq6HLgbuMtZ3g/cAXw9wu5vVNV1zqNxMm/AmJnQMAdnoxvPBct99AwG2HW83e1Q\njIuiuZLYCFSo6lFVHQQeBjaNKLMJuN95/ihwmYiIqvao6iuEkoUxs1ZDRx956cmkp8zN4ThGc+5S\nHyJ2v0SiiyZJLASOh72ucZaNWkZV/UAH4Iti3z93qprukLk2g4uZUxo6+xOmPWJYXkYKpy3Itfsl\nElw0SWK0L++RnaejKTPSjap6OnCR8/j0qAcXuUVEtovI9qampnGDNSbWBvwBmroGEqqqadj5y328\nVd1G76Df7VCMS6JJEjXAorDXpUBdpDIikgTkAq1j7VRVa51/u4AHCVVrjVbuHlVdr6rri4qKogjX\nmNg60thDUOfuHBJjuWBZIUMB5Y1jY36czRyWFEWZbcAKEVkC1ALXATeMKLMZuAnYAlwLvKhjDCHp\nJJI8VW0WkWTgKuD5ScRvzLTbX98JJFaSeHBrNRAa1NDrEe790zHq2v/ctHjDOYvdCs3MsHGThKr6\nReRW4BnAC9ynqntF5DvAdlXdDNwLPCAiFYSuIK4b3l5EKoEcIEVEPgx8AKgCnnEShJdQgviPmL4z\nY2LkQEMnSR7Blzk3JxoaS0qSh8UFGRyxea8TVjRXEqjqU8BTI5bdGfa8H/h4hG3LI+z27OhCNMZd\nBxq6mJeThteTmH0rlhVl8sL+RnoH/GSkRvWVYeYQu+PamHHsr+9KyEbrYcuKslDgSHOP26EYF1iS\nMGYMjV39NCfARENjKc3PICXJY1VOCcqShDFj2FPbAYTmfk5UXo+wxJfJkUZLEonIkoQxY9hT24kI\nLEjgKwkITWna0jNIe++g26GYGWZJwpgx7K7tYElhJqnJiTMcx2iWF2UBcKTJ2iUSjSUJY8awp7aD\n0xfmuh2G6+blpJKZmmTtEgnIkoQxETR3D1Df0W9JgtCUpsuKMjnS1M0Y98maOciShDER7HYarU9d\nYEkCQl1hu/r9NHUNuB2KmUGWJIyJYO9wkliY43Ik8WHZO+0SVuWUSCxJGBPBcKN1Tlqy26HEhYLM\nFPIzkjlqN9UlFEsSxkSwp7aT06w94iTlvkwqW3qtXSKBWJIwZhStPYPUtvdx2gKragpX5sukZ8BP\nZUuv26GYGWJJwphRDDdaW8+mk5X7MgDYZvNLJAxLEsaMYndNOwCnWpI4SVF2KhkpXt6otCSRKCxJ\nGDOKHVVtrCjOIjfdGq3DiQjlvky2WZJIGJYkjBkhGFR2VLVxdlm+26HEpXJfBlUtvTR29o9f2Mx6\nliSMGeFIUzed/X7OsiQxqjJfJoBVOSUISxLGjLCjqg2A9ZYkRrUgL530ZC/bK9vcDsXMAEsSxoyw\no6qN/IxklhRmuh1KXPJ6hLPK8njDejglBEsSxoww3B4hkphzWkdjQ3kB+xs66ewfcjsUM81sVvMY\neXBr9Zjrbzhn8QxFYqaitWeQo809XLu+1O1Q4trG8gJUQwn1vSuL3Q7HTCO7kjAmzJvvtEcUuBxJ\nfFu3OI8kj9hNdQnAkoQxYXZUt5HkEdaW2k10Y8lISeLUhbl2v0QCsCRhTJgdlW2cujCXtASfrjQa\nG8vz2XW8g/6hgNuhmGkUVZIQkctF5KCIVIjIbaOsTxWRR5z1W0Wk3FnuE5E/iEi3iPxwxDZni8hu\nZ5sfiLUSGpf1Dvp563gb5yyxqqZobCgvYDAQfGecKzM3jZskRMQL/Ai4AlgDXC8ia0YUuxloU9Xl\nwN3AXc7yfuAO4Ouj7PonwC3ACudx+WTegDGxsvVYK0MB5cLlhW6HMitsKA8lU+sKO7dFcyWxEahQ\n1aOqOgg8DGwaUWYTcL/z/FHgMhERVe1R1VcIJYt3iMh8IEdVt2hoYPpfAh+eyhsxZqpeOdxMSpKH\njXYlEZX8zBRWFGdZu8QcF02SWAgcD3td4ywbtYyq+oEOwDfOPmvG2acxM+qVw81sKM+39ogJWF9e\nwI7KNgJBm4RoroomSYzWVjDyLyKaMpMqLyK3iMh2Edne1NQ0xi6NmbzGzn4OnujiwuVFbocyq2xc\nkk/XgJ8DDZ1uh2KmSTRJogZYFPa6FKiLVEZEkoBcYKxr0BpnP2PtEwBVvUdV16vq+qIi+wCb6fFK\nRTMAF62w9oiJGG6XsHGc5q5o7rjeBqwQkSVALXAdcMOIMpuBm4AtwLXAizrGJLiqWi8iXSJyLrAV\n+Azw75OI35iYeOVwMwWZKayZb9OVRiN8hIHc9GQe3VFDsvfk35w2ysDcMG6SUFW/iNwKPAN4gftU\nda+IfAfYrqqbgXuBB0SkgtAVxHXD24tIJZADpIjIh4EPqOo+4AvAL4B04PfOw5gZp6q8UtHM+ct8\neDzWE3uiyn0ZHG3uQVVtvKs5KKqxm1T1KeCpEcvuDHveD3w8wrblEZZvB06LNlBjpsvBE100dg1Y\nVdMklRdmsqumg9aeQXxZqW6HY2LM7rg2Ce+5vScAeI8NVDcpw5MQVbb0uhyJmQ6WJEzCe3pvA2ct\nzmNeTprbocxKxdmppCd7qWzpcTsUMw0sSZiEdry1l711nVx+WonbocxaHhHKfBlUNluSmIssSZiE\n9szeBgA+eKoliako92XS0jNIl01CNOdYkjAJ7Zm9DawqyX6nXt1MTrkz1WuVtUvMOZYkTMJq6hpg\ne1WbVTXFwIK8NJK9Yu0Sc5AlCZOwntt3AlUsScRAksdDaX6GJYk5yJKESVhPvF1HuS+DlfOy3Q5l\nTij3ZVLf3m+TEM0xUd1MZ8xcU9fex5ajLXz5shU89Mbx8Tcw4yovzEAPQnVrL6dY4p0z7ErCJKTH\nd9aiCh89s3T8wiYqiwsy8AhUWZXTnGJXEmZOCx+Ibpiq8vNXKynzZbwz+quZutQkL/Nz0+3O6znG\nriRMwqlt76Opa4CzFuW7HcqcU+7L4HhrL/5A0O1QTIxYkjAJ563qdpI8wmkLc90OZc4p82XiDyq1\n7X1uh2JixJKESSj+YJBdNe2snp9DeopNUxprwzfVWZXT3GFJwiSUfXWd9A4GOGuxVTVNh6zUJAqz\nUm0cpznEkoRJKNsqW8nLSGbFvCy3Q5mzyn0ZVLX2EAyONc29mS0sSZiE0dI9wJGmHjaUF+CxGdSm\nTXlhJv1DQfbVd7odiokBSxImYWyrbMUjcLZVNU2r5cWhq7Q/HmpyORITC5YkTELwB4PsqGpjVUkO\nOenJboczp+WkJbMgN42XDja6HYqJAUsSJiHsq+ukZzDAxiUFboeSEE4pyebN6nY6+mx+idnOkoRJ\nCFuOtlCQmfJOVYiZXivnZRMIKq8ctjvaZztLEmbOq2vvo6qll3OXWIP1TCnNzyAnLYk/WJXTrGdJ\nwsx5W460kOwVzi6zqqaZ4vUIF59SxB8PNVlX2FnOkoSZ03oG/OyqaefMxfl2h/UMe8/KYpq6Bqwr\n7CwXVZIQkctF5KCIVIjIbaOsTxWRR5z1W0WkPGzd7c7ygyLywbDllSKyW0R2isj2WLwZY0baVtmK\nP6ict9TndigJ55JTigB48YBVOc1m4yYJEfECPwKuANYA14vImhHFbgbaVHU5cDdwl7PtGuA64FTg\ncuDHzv6GvVdV16nq+im/E2NG8AeCbD3WyrKiTOblpLkdTsIpyk7l7LJ8ntpd73YoZgqiuZLYCFSo\n6lFVHQQeBjaNKLMJuN95/ihwmYiIs/xhVR1Q1WNAhbM/Y6bds/tO0NE3xPnLCt0OJWFdvXY+Bxq6\nOHSiy+1QzCRFkyQWAuHzO9Y4y0Yto6p+oAPwjbOtAs+KyA4RuSXSwUXkFhHZLiLbm5ri7w7O/qEA\nm3fVUdNmo17Gm1+8Vkl+RjIrS2wqTbdcuXY+HoEndtW5HYqZpGhmphutz+DI7gqRyoy17QWqWici\nxcBzInJAVV9+V2HVe4B7ANavXx833SQG/UF+/FIFD2ypoqVnEAEuXV3Me1cWWzfLOLCvrpM3jrVy\nxWkl9v/houLsNM5b5mPzrjq+8v5TEPu/mHWiuZKoARaFvS4FRv4seKeMiCQBuUDrWNuq6vC/jcBj\nzLJqqH957hD/+vxh1i3K4/6/2MgZi/J4YX8j9716jIB1+XPd/a9Vkp7sZb11e3Xd1WsXUNnSy55a\n6+U0G0WTJLYBK0RkiYikEGqI3jyizGbgJuf5tcCLqqrO8uuc3k9LgBXAGyKSKSLZACKSCXwA2DP1\ntzMzdh5v556Xj/DJ9Yu497MbuOSUIj6xfhGb1i3gaFMPrx9tcTvEhNbaM8jjO2v5yFkLrdtrHLj8\ntBKSvcLmXbVuh2ImYdwk4bQx3Ao8A+wHfqWqe0XkOyJyjVPsXsAnIhXAV4HbnG33Ar8C9gFPA19U\n1QAwD3hFRHYBbwBPqurTsX1r06N/KMDXf72LeTlpfPOq1Set21hewIriLJ7ff4LuAb9LEZoHtlQx\n4A/y2fPL3Q7FAHkZKVy8oojf7aq3ua9noajuk1DVp1T1FFVdpqrfc5bdqaqbnef9qvpxVV2uqhtV\n9WjYtt9ztlupqr93lh1V1TOcx6nD+5wNfvyHCioau/n+R08nJ+3k0URFhA+tnc9QIMizextcijCx\n9Q0GuH9LJZetKuaUedZgHS8+sWERDZ39PLfvhNuhmAmyO64noKt/iJ+/WsmVp5fwnpXFo5Ypzk7j\n/GWF7Khqs8ngXfDrHcdp7Rnk8+9Z5nYoJsz7Vs9jUUE69716zO1QzARZkpiAh96opmvAzxcuWT5m\nuUtXFZOW7OWPNrjZjPIHgtxzHnOEAAAU6ElEQVTz8lHOWpzH+jKbWCieeD3CTeeVs62yjT21HW6H\nYybAkkSUBv1B7nulkvOW+ji9NHfMsmnJXjaUF7C3rpPWnsEZitA8ubuemrY+Pn/JMutqGYc+sWER\nmSleu5qYZSxJROl3u+po6OznlkuWRlX+vGU+RGDLERtPfyYEgsoPX6xgeXEW71s9z+1wzChy0pK5\n9uxSnthVT2NXv9vhmChFczNdwlNV/uNPR1k5L5v3OIOWjSc3PZm1pXlsq2rjMvvSmnZPvF3H4cZu\nfnjDmXg8dhURDx7cWv2uZb6sVPzBIF9+aCcP3XKuC1GZibIriShsOdLCgYYu/vKiJROqxrhgWSGD\n/iDbK1unMTrjDwT5t+cPs6okmytPm+92OGYMhVmpbCgvYOuxFioabTyn2cCSRBR+uaWK/Ixkrj5j\nwYS2W5ifTrkvk9eOtFj/8Gn0+M46jjb38L/ed4pdRcwC71s9j5QkD999cr/boZgoWJIYR31HH8/t\nP8EnNiwiLXnid+9euLyQ9r4hnrb7JqbFgD/Av71wiNMW5vDBU61abzbITE3i0pXFvHSwiZesB2Dc\nsyQxjge3VhNU5VPnlE1q+1Xzs/FlpnDvK9ajYzrc+8oxjrf28Y0PrrIeTbPIuct8LCnM5I7f7qGj\nd8jtcMwYLEmMYdAf5KE3jnPpymIWFWRMah8eEc5f5uOt6nZ2VLXFOMLEVt/Rxw9frOADa+ZxcZQd\nCkx8SPJ4+OdPnEFDRz9f+/VOmwc7jlmSGMPv99TT3D3Ap8+b3FXEsLPK8slJS+LeV46OX9hE7e+f\nOkAgqNxx1ciJEs1scNbifL555Wqe39/IPX+yz0a8siQRwXC316WFmVy8Ymq/UlOTvNxwThlP72ng\neKtNThQLr1U087tddXz+kmWTvsoz7rvp/HI+tHY+//D0AR57q8btcMwo7D6JCLYcaWFPbSff/+jp\nMekxc9P5ZfzsT0f5xWuV9st3ijp6h/jar3expDCT/IyUUfvjm9lBRPiHj62lrWeQrzyyi65+P585\nr9ztsEwYu5KI4P+9fJTCrFQ+cubImVonZ35uOh9aO59Hth2ns98a6iZLVfk/j+2mqWuAf/3kOlKS\n7E94tstMTeK+z27g/Wvmcedv9/KtzXvpHbSh9uOFXUmMYn99Jy8fauJ/f3DlpLq9RnLzhUv47c46\nfrXtOH95UXTDe5iT/XpHDU/urucbl6/kjEV57K2z2c5mq5FXgBevKKK7388vXqvk8Z21XL12Ad++\n5lS798Vl9jNsFPe8fJSMFO+ku71GsrY0j43lBfz81Uq7uW4Sth5t4W8e38N5S3187mIbCnyu8XqE\nq89YwC0XLSXJ4+GB16u49J9f4qd/PEJFYzehyS7NTLMriRH21nXw+M5a/vLCJeRmJI+/wQTdfNES\nPvfADp7e28BVayd2B3ciO9jQxV/+cjuL8tP5yafOwmu/Lues8sJMvnTpcvbUdXKsuZvv//4A3//9\nAXyZKZy2MJcyXwaLCzIo82Wyu7aDgoyUMasdbzhn8QxGP/dYkgijqnx78z7yM1K49dIV03KM962e\nx9LCTP752UO8b/W8mFZnzVVHmrq56b43yEjxcv9fbCQvI8XtkMw0S/J6WLcoj3+4di1VLaF547ce\na+XQiS7erG6jq//kNovstCSKslNDyaMggyWFWdZeFSOWJMI88XY9b1S28vcfOZ3c9NhfRUDokvrb\nm07l0/e+wY9fOsJX33/KtBxnLnhwazXHmnv4z9er8Aj8xYVLePmQDb2eaMp8mZT5MvnkhtAVgarS\n3jtEVWsvD22tpqVnkNaeQRo6+3j5UBNBhWSvsKI4mzMW5TEUCJLstYQxWZYkHL2Dfr7/1H7WzM/h\nkxsWTeuxLlpRxIfXLeAnL1VwzRnzWV5sczGPpKpsO9bK5rfryM9I4bPnl1OQaVcQJtRtNj8zhfzM\nFPaN6Lgw6A9S1drDvrpO9td3sq++kxcPnOCGjWVcv3ERxTlpLkU9e1l6BYJB5X//+m3qO/v51jWn\nzkh9999ctYbM1CRu/81uhqwR+yQ1bb185r43eGxnLeW+DD5/yVJLECYqKUkeVhRns2ndQr5x+So+\nfW4ZK0tyuPv5Q5z/f1/k1gffZHtlqzWCT4BdSQA/ePEwT+6u5/YrVrFxScGMHLMwK5W/vXoNX3lk\nF3/96Nv808fPSPiufo2d/fz05aP819YqvCJcc8YCNi4pwGMD9yWsqdwo6RFh9fwcVs/PYX1ZPluP\ntvD8/hM88XY9C/PSOW+Zj7ULc/nM+eWxC3gOSvgk8evtx/nX5w/zsbNKueXimb134SNnllLb1sc/\nPXuInPRk/vbqNQk3kqk/EOSVimYee6uWp/c04A8qH163kK+8f4W1P5iYKcxK5UNrF/C+NfPYebyd\n14608OiOGn6/p4Gm7gGuPbuUMl+m22HGpaiShIhcDvwb4AV+pqr/d8T6VOCXwNlAC/BJVa101t0O\n3AwEgC+p6jPR7HO69Q8F+Lsn9vFfW6s5b6mPv//oaa58QX/xvctp6x3i3leO0dIzyLeuXoMvK3XG\n44hGMKgMBoIMBoI8tLWaQFAJaqgx3usRkpx/vR7hU+e++x6T/qEAJzr7OdrUw6ETXTz2Vi2VLT30\nDwVJT/ayblEeFy4vxJeVagnCTIvUJC/nLPGxsbyAI009vHakmR/+oYJ/f7GCM0pz+cCpJVy0opBT\nF+RaN2uHjFc3JyJe4BDwfqAG2AZcr6r7wsr8FbBWVT8vItcBH1HVT4rIGuAhYCOwAHgeGO7OM+Y+\nR7N+/Xrdvn37xN9lmP6hAL/bVcc9Lx/lcGM3n7tkKV//wMop934Y77J4rL7awaA6f6iHyUpN4msf\nWMnVZyyYth5W4YYCQZq7B2jsHOBEZz9N3QO0dA/S0j1Ac/cgzd0DtPSEXrdNYNx/r0dI9grJXg/J\nXg+9g376h05ueynMSmFJYRYr52VxyrxskqwHinHBJSuLeGJXHb97u449taGG8Oy0pFBVVUk2i32Z\nzM9NozArlYwUL+kpXjJTkkhP8ZKR4p0VPadEZIeqrp/MttFcSWwEKlT1qHOwh4FNQPgX+ibgW87z\nR4EfSuhn+SbgYVUdAI6JSIWzP6LYZ8xsOdLCzuPtvF0Tuszs6BtieXEWP/8fG3jvyuLpOOSEeDzC\nly5bweWnlfDX//02f/P4Hr7zu31cfEoRZ5TmsmJeNgvz0snLSCYrNQmvV/BK6Be7RwRFGQoog/4g\nQ4Egg/4g3QN+uvr9dPYN0TUwREfvEM3dg2w50kLXwNA763oHA4z2MyE3PRlfVgqFmamsKM7i3KUF\nFGSkkJrsJTXJw66aDpI8gkcgEIRAMEggqASCil+V1SU5oVgCoZgyUpLITU+mKCuVpUWZLC3K4uk9\nNlufcd8fDzaRnZbMDRvL6Oof4khTD5XNPTR09LOzup3BcTqWeEVIThJy05NJT/aSnpJEerKHzNQk\nctKTyUlLJjc9mZz0JHLSkp1loc9DdloyackeUpI8pDg/qJK8QjAIQ8EggYCG/g0qJTlprtR2RJMk\nFgLHw17XAOdEKqOqfhHpAHzO8tdHbDs8Yt54+4yZO367h4rGbhYXZHDZqmI+sWER5ywpiLv6/1Pm\nZfObL5zP2zUd/HZnHc/vP8Hz+0/EbP9ej5CZ4iXb+aMtzc8gJy2J7LRkstOSnEcyN1+4ZNwbkaZy\n5WRMvMpOS2bdojzWLcoDQl2x+wYDdPQP0TMQYNAfZDAQYNCvDPoDDAb0nR9DZQUZ9A4G6BsK0DcY\noKvfT217H519oR9k4yWb8Rz4u8tdufk2miQx2jfpyB+fkcpEWj7aN9Co9V4icgtwi/OyW0QORohz\nXFXAn4C7J7uDsRUCESvSb5yeY07GmHEC/FUMDhKD9ztunHHC4owtizOC9LsmvWkhMOmB6KJJEjVA\n+N1lpUBdhDI1IpIE5AKt42w73j4BUNV7gHuiiNNVIrJ9snV+M8nijC2LM7YszthzYi2f7PbRtLhs\nA1aIyBIRSQGuAzaPKLMZuMl5fi3wooZaxDcD14lIqogsAVYAb0S5T2OMMS4b90rCaWO4FXiGUHfV\n+1R1r4h8B9iuqpuBe4EHnIbpVkJf+jjlfkWoQdoPfFFVAwCj7TP2b88YY8xURHWfhKo+BTw1Ytmd\nYc/7gY9H2PZ7wPei2ecsF/dVYg6LM7YsztiyOGNvSrGOe5+EMcaYxBX/d4EYY4xxjSWJKRKRy0Xk\noIhUiMhtbsczTEQWicgfRGS/iOwVkS87ywtE5DkROez8m+92rBC6s19E3hKRJ5zXS0RkqxPnI04H\nB7djzBORR0XkgHNez4vj8/kV5/99j4g8JCJp8XBOReQ+EWkUkT1hy0Y9hxLyA+ez9baInOVynP/o\n/N+/LSKPiUhe2LrbnTgPisgH3YwzbN3XRURFpNB5PanzaUliCpwhS34EXAGsAa53hiKJB37ga6q6\nGjgX+KIT223AC6q6AnjBeR0PvgzsD3t9F3C3E2cbofG/3PZvwNOqugo4g1C8cXc+RWQh8CVgvaqe\nRqhzyHXExzn9BXD5iGWRzuEVhHpEriB0r9RPZihGGD3O54DTVHUtoWGFbgdwPlfXAac62/zY+W5w\nK05EZBGhYY/C73qd1Pm0JDE17wxZoqqDwPDwIq5T1XpVfdN53kXoC20hofjud4rdD3zYnQj/TERK\ngQ8BP3NeC3ApoSFeIA7iFJEc4GJCPflQ1UFVbScOz6cjCUh37lvKAOqJg3Oqqi8T6gEZLtI53AT8\nUkNeB/JEZL5bcarqs6o6PG/q64Tu7xqO82FVHVDVY0D48EMzHqfjbuAbnHyT8qTOpyWJqRltyJKF\nEcq6RkTKgTOBrcA8Va2HUCIB3B+8Cv6V0B/08LgFPqA97AMZD+d1KdAE/NypFvuZiGQSh+dTVWuB\nfyL0K7Ie6AB2EH/ndFikcxjPn6+/AH7vPI+rOEXkGqBWVXeNWDWpOC1JTE00Q5a4SkSygP8G/peq\ndo5XfqaJyFVAo6ruCF88SlG3z2sScBbwE1U9E+ghDqqWRuPU6W8ClhAafTmTUFXDSG6f0/HE498B\nIvJNQtW5/zW8aJRirsQpIhnAN4E7R1s9yrJx47QkMTXRDFniGhFJJpQg/ktVf+MsPjF8ien82+hW\nfI4LgGtEpJJQdd2lhK4s8pyqEoiP81oD1KjqVuf1o4SSRrydT4D3AcdUtUlVh4DfAOcTf+d0WKRz\nGHefLxG5CbgKuFH/fP9APMW5jNCPg13OZ6oUeFNESphknJYkpiZuhxdx6vXvBfar6r+ErQofQuUm\n4LczHVs4Vb1dVUudsWWuIzSky43AHwgN8QLxEWcDcFxEVjqLLiM0kkBcnU9HNXCuiGQ4fwfDscbV\nOQ0T6RxuBj7j9Mo5F+gYrpZyg4QmSvtr4BpV7Q1bFWn4oRmnqrtVtVhVy53PVA1wlvP3O7nzqar2\nmMIDuJJQT4cjwDfdjicsrgsJXUq+Dex0HlcSqu9/ATjs/FvgdqxhMb8HeMJ5vpTQB60C+DWQGgfx\nrQO2O+f0cSA/Xs8n8G3gALAHeABIjYdzSmgSsnpgyPkCuznSOSRUPfIj57O1m1BvLTfjrCBUpz/8\nefp/YeW/6cR5ELjCzThHrK8ECqdyPu2Oa2OMMRFZdZMxxpiILEkYY4yJyJKEMcaYiCxJGGOMiciS\nhDHGmIgsSZhZS0R+ISLfnYb9fktE/jPW+zVmNrIkYeKaiFSKSJ+IdItIm4g86YxwOVPHL3eGW+52\nHpUSR0PCGzPdLEmY2eBqVc0C5gMngH93IYY8J4brgTudu29PEjbkhWviIQYzt1iSMLOGhuZSf5TQ\n3B3vIiL/05lQpVVENovIgrB154vINhHpcP49P2zdEhH5o4h0ichzQOEYMWwB9gKnOduqiHxRRA4T\numMYEVkloclzWp1JaD4RdqwrRWSfc6xaEfm6s7xQRJ4QkXZnuz+JiCfsGMvD9vFONZuIvEdEakTk\nr0WkAfi5s/wqEdnp7O81EVk7wdNtDGBJwswizgiXnyQ0lv/IdZcC3wc+QeiKo4rQgIGISAHwJPAD\nQkNA/AvwpIj4nM0fJDSUdiHwd/x5HKGRxxARuYDQ5DJvha36MHAOsMYZPvw5Z5/FhK48fiwipzpl\n7wU+p6rZhBLNi87yrxEaVqEImAf8H6IfSbQEKADKgFskNOPYfcDnnPf7U2CziKRGuT9j3mFJwswG\nj4tIO9BJaLatfxylzI3Afar6pqoOEJo17DxnLo0PAYdV9QFV9avqQ4TGNbpaRBYDG4A7NDRpzMvA\n70bZfzOhyV1+Btymqi+Erfu+qraqah+hEUIrVfXnzrHeJDQS7/DAekOEkkmOqrY564eXzwfKVHVI\nVf+k0Y+ZEwT+1om/D/ifwE9VdauqBlT1fmCA0AyFxkyIJQkzG3xYVfMIDVJ3K/BHZ+jjcAsIXT0A\noKrdQAuhSVVOWueoClvXpqo9I9aNVKiq+aq6WlV/MGJd+EQuZcA5TjVPu5PcbiT0ax/gY4QGWqxy\nqrjOc5b/I6EB5J4VkaMTbBxvcqriwmP42ogYFjnv1ZgJsSRhZg3nV/FvgAChUW7D1RH6cgTAqfbx\nAbUj1zkWO+vqgXynfPi6CYUW9vw48EdVzQt7ZKnqF5z3sE1VNxGqinoc+JWzvEtVv6aqS4Grga+K\nyGXOPnsJTUE6bGSCHHnFcRz43ogYMpwrKGMmxJKEmTWcNoFNhIbo3j9i9YPA/xCRdU7d+98DW1W1\nEngKOEVEbhCRJBH5JKHG7ydUtYrQ8N/fFpEUEbmQ0Jf0ZD3hHOvTIpLsPDaIyGpn/zeKSK6GJgPq\nJJTwhhual4uIhC0POPvcCdwgIl6nV9Ul48TwH8DnReQc55xlisiHRCR7Cu/LJChLEmY2+J2IdBP6\n8vwecJOq7g0v4LQR3EGo/r+e0Axd1znrWgi1FXyNUBXUN4CrVLXZ2fwGQg3PrcDfAr+cbKCq2gV8\nwDl2HdAA3EWoqgzg00CliHQCnwc+5SxfATwPdANbgB+r6kvOui8TSlzDVVePjxPDdkLtEj8E2ghV\nY312su/JJDabT8IYY0xEdiVhjDEmIksSxhhjIrIkYYwxJiJLEsYYYyKyJGGMMSYiSxLGGGMisiRh\njDEmIksSxhhjIrIkYYwxJqL/DyWUTaS3ttQuAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xf274978>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure()\n",
    "sns.distplot(data.BloodPressure.values, bins=30, kde=True)\n",
    "plt.xlabel('BloodPressure', fontsize=12)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "BloodPressure_median = round(data[data.BloodPressure>0]['BloodPressure'].median()) \n",
    "data['BloodPressure'].replace(0,BloodPressure_median, inplace = True)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\npr9luwAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xebba0f0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure()\n",
    "sns.distplot(data.SkinThickness.values, bins=30, kde=True)\n",
    "plt.xlabel('SkinThickness', fontsize=12)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "SkinThickness_median = round(data[data.SkinThickness>0]['SkinThickness'].median()) \n",
    "data['SkinThickness'].replace(0,SkinThickness_median, inplace = True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYoAAAENCAYAAAARyyJwAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzt3XucXWV97/HPd/bcMkkmySSTC0nI\nJCSAASFCBEHRVgSDpUSPqEGq2EI59kjVVl890Fbr4dQe6bGiVqqCYCmtAqI9BpqC3ESpCEwQAgEC\nk5DLJCGZ3GeSTOb2O3/sNWEz7lmzZ7Inc+H7fr32a9Z61rOe/Sx2mO88a639LEUEZmZmvSkZ6g6Y\nmdnw5qAwM7NUDgozM0vloDAzs1QOCjMzS+WgMDOzVA4KMzNL5aAwM7NUDgozM0tVOtQdKIYpU6ZE\nXV3dUHfDzGxEWbly5Y6IqO2r3qgIirq6Ourr64e6G2ZmI4qkDYXU86knMzNL5aAwM7NUDgozM0vl\noDAzs1QOCjMzS+WgMDOzVA4KMzNL5aAwM7NUBQWFpCWS1khqkHR1nu0Vku5Itj8uqS4pnyzpYUkt\nkr6VU3+8pKdzXjskfT3Z9glJTTnbrijOoZqZ2UD0+c1sSRngBuA8oBF4UtLyiHg+p9rlwO6ImC9p\nGXAd8BGgFfgCcHLyAiAimoFFOe+xEvhJTnt3RMRVAz6qYeQHj2/ss85Hzzz2KPTEzGxgChlRnAE0\nRMS6iGgDbgeW9qizFLg1Wb4LOFeSImJ/RDxKNjDykrQAmAr8st+9NzOzQVdIUMwENuWsNyZleetE\nRAewF5hcYB8uITuCiJyyD0paJekuSbPz7STpSkn1kuqbmpoKfCszM+uvQoJCecpiAHV6swz4Yc76\n3UBdRJwCPMBrI5XXNx5xY0QsjojFtbV9Tn5oZmYDVEhQNAK5f9XPArb0VkdSKTAB2NVXw5JOBUoj\nYmV3WUTsjIhDyepNwOkF9NHMzAZJIUHxJLBA0lxJ5WRHAMt71FkOXJYsXww81ONUUm8u4fWjCSTN\nyFm9CHihgHbMzGyQ9HnXU0R0SLoKuA/IALdExGpJ1wL1EbEcuBm4TVID2ZHEsu79Ja0HqoFySe8H\nzs+5Y+rDwPt6vOWnJV0EdCRtfeIIjs/MzI5QQQ8uiogVwIoeZV/MWW4FPtTLvnUp7c7LU3YNcE0h\n/TIzs8Hnb2abmVkqB4WZmaVyUJiZWSoHhZmZpXJQmJlZKgeFmZmlclCYmVkqB4WZmaVyUJiZWSoH\nhZmZpXJQmJlZKgeFmZmlclCYmVkqB4WZmaVyUJiZWSoHhZmZpXJQmJlZKgeFmZmlclCYmVkqB4WZ\nmaUqKCgkLZG0RlKDpKvzbK+QdEey/XFJdUn5ZEkPS2qR9K0e+/w8afPp5DU1rS0zMxsafQaFpAxw\nA3ABsBC4RNLCHtUuB3ZHxHzgeuC6pLwV+ALw+V6avzQiFiWv7X20ZWZmQ6CQEcUZQENErIuINuB2\nYGmPOkuBW5Plu4BzJSki9kfEo2QDo1B52+rH/mZmVkSFBMVMYFPOemNSlrdORHQAe4HJBbT9/eS0\n0xdywmCgbZmZ2SAoJCjy/TUfA6jT06UR8WbgnOT1sf60JelKSfWS6puamvp4KzMzG6hCgqIRmJ2z\nPgvY0lsdSaXABGBXWqMRsTn52Qz8gOwproLbiogbI2JxRCyura0t4DDMzGwgCgmKJ4EFkuZKKgeW\nAct71FkOXJYsXww8FBG9jigklUqakiyXARcCzw2kLTMzG1ylfVWIiA5JVwH3ARnglohYLelaoD4i\nlgM3A7dJaiD71/+y7v0lrQeqgXJJ7wfOBzYA9yUhkQEeAG5Kdum1LTMzO/r6DAqAiFgBrOhR9sWc\n5VbgQ73sW9dLs6f3Ur/XtszM7OjzN7PNzCyVg8LMzFI5KMzMLJWDwszMUjkozMwslYPCzMxSOSjM\nzCyVg8LMzFI5KMzMLJWDwszMUjkozMwslYPCzMxSOSjMzCyVg8LMzFI5KMzMLJWDwszMUjkozMws\nlYPCzMxSOSjMzCyVg8LMzFIVFBSSlkhaI6lB0tV5tldIuiPZ/rikuqR8sqSHJbVI+lZO/SpJ/yHp\nRUmrJX0lZ9snJDVJejp5XXHkh2lmZgPVZ1BIygA3ABcAC4FLJC3sUe1yYHdEzAeuB65LyluBLwCf\nz9P0VyPiROAtwNslXZCz7Y6IWJS8vtevIzIzs6IqZERxBtAQEesiog24HVjao85S4NZk+S7gXEmK\niP0R8SjZwDgsIg5ExMPJchvwFDDrCI7DzMwGSSFBMRPYlLPemJTlrRMRHcBeYHIhHZA0Efh94MGc\n4g9KWiXpLkmzC2nHzMwGRyFBoTxlMYA6v92wVAr8EPhmRKxLiu8G6iLiFOABXhup9Nz3Skn1kuqb\n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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xfb14978>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure()\n",
    "sns.distplot(data.Insulin.values, bins=30, kde=True)\n",
    "plt.xlabel('Insulin', fontsize=12)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "Insulin_median = data[data.Insulin>0]['Insulin'].median()\n",
    "data['Insulin'].replace(0,Insulin_median, inplace = True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAAENCAYAAADjW7WQAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzt3Xl43NV97/H3d2akkUb77kWrN2wD\ntjFmX5pASCFtIS3QmPQ25IaU2za0zU375JIueVqepG16e0OSQtLSkIakTQh1szjghhAgJIBjsMG7\nbCPJtiRLlmXt22iZ+d4/ZmQUIVkjeUa/38x8X8+jRzO/OaP5avvo6PzO7xxRVYwxxqQHj9MFGGOM\nWTwW+sYYk0Ys9I0xJo1Y6BtjTBqx0DfGmDRioW+MMWnEQt8YY9KIhb4xxqQRC31jjEkjPqcLmK60\ntFRra2udLsMYY5LKnj17zqpq2VztYgp9EbkV+CLgBb6qqn8/7XE/8A3gcqAL+ICqnog+tgH4FyAf\nCANXqGpwtteqra1l9+7dsZRljDEmSkROxtJuzuEdEfECjwK3AeuBe0Rk/bRm9wE9qroKeBj4XPS5\nPuDfgd9X1YuBdwHjMX4Oxhhj4iyWMf0rgQZVbVLVMeBJ4I5pbe4Anoje3gbcLCICvBfYr6r7AFS1\nS1VD8SndGGPMfMUS+suBlin3W6PHZmyjqhNAH1ACrAFURJ4VkTdE5JMXXrIxxpiFimVMX2Y4Nn09\n5tna+IDrgSuAYeB5Edmjqs//0pNF7gfuB6iuro6hJGOMMQsRS0+/Faiacr8SaJutTXQcvwDojh5/\nSVXPquowsAPYPP0FVPUxVd2iqlvKyuY8+WyMMWaBYgn914HVIlInIpnAVmD7tDbbgXujt+8CXtDI\n7izPAhtEJBD9Y/ArwOH4lG6MMWa+5hzeUdUJEXmASIB7ga+p6iEReQjYrarbgceBb4pIA5Ee/tbo\nc3tE5PNE/nAosENVn0nQ52KMMWYO4rbtErds2aI2T98YY+Yner50y1ztbBkGY4xJI65bhsEYN/vW\nrubzPv7Bq2z2mXE36+kbY0wasdA3xpg0YqFvjDFpxELfGGPSiIW+McakEQt9Y2YxNhGma3DU6TKM\niSubsmnMDHY1dfHJ/9rPya5haksCXLuqlE/+6kVOl2XMBbPQN2aKcFj52x31fPXl41QXB/iz965h\nX2sf/7m7hc6BUd61pozIVhHGJCcLfWOm+MpLjXz15eP8zlXV/MWvrSOQGfkV+erPm/jMM/UEMr1c\nVVficJXGLJyN6RsT9bNjnfy/Hx/lNzYu4zPvv+Rc4AN85Lo6blxTxo4D7XT0z7rFszGuZ6FvDNDa\nM8wfP/kmq8vz+Nydl75jCMfjEf7x7g1keD3sONDuUJXGXDgb3jFp4Xxr5qgqT+w8wfhEmH/+3ct/\nqYc/VXleFlevKOHFI2foHR6jMJCZoGqNSRzr6Zu0d6itn2Mdg3zivRdRV5pz3raXVxehwBvNPYtT\nnDFxZqFv0troeIin97extCCLe6+pmbN9UU4mK8ty2HOyh7DL9qIwJhYW+iatPX/kDAPBCd6/aTk+\nb2y/DpfXFNMzPM7xs0MJrs6Y+LPQN2mra3CUVxvPcnlNEVXFgZifd/GyfLIyPOw5aUM8JvlY6Ju0\n9ezhDnweD7esr5jX8zK8HjZWFnLwVB+jE6EEVWdMYtjsHZOWWrqHOXiqj5vWlpOXlQHMvSvWVBcv\nK2DX8W6Onx1i7ZL8RJVpTNxZT9+kHVXlvw+2k+v3ccOq0gV9jJqSABle4a0zg3GuzpjEstA3aedY\nxwAnuoa5aW05/gzvgj5GhtdDbUkODR0W+ia5WOibtKKq/KT+DEWBDK6oLb6gj7W6PJfOwVF6h8fi\nVJ0xiWehb9LKkdMDnOod4aa15Xg9F7Za5qryPAAabIjHJBELfZM2Ir38DopzMtlUVXTBH68i30+e\n32fj+iapWOibtHG4vZ/2vmBcevkAIsKq8lwaOwft6lyTNCz0TVpQVV48eoaSnEw2VhbG7eOuKs9l\neCxEe68tt2ySQ0yhLyK3ishREWkQkQdneNwvIt+JPr5LRGqjx2tFZERE9kbf/jm+5RsTm4bOQdp6\ng/zKmrK49PInrSrPPffxjUkGc16cJSJe4FHgFqAVeF1Etqvq4SnN7gN6VHWViGwFPgd8IPpYo6pu\ninPdxszLS8c6yc/ysakqfr18gLysDEpzM2nuGgLK4vqxjUmEWHr6VwINqtqkqmPAk8Ad09rcATwR\nvb0NuFlsI1HjEntbemnqHOL6VaUxL6o2H9XFOZzsHkZtXN8kgVh+A5YDLVPut0aPzdhGVSeAPmBy\nI9E6EXlTRF4SkRtmegERuV9EdovI7s7Oznl9AsbM5Ss/bSA7w3vB8/JnU1McYHgsRNeQzdc37hdL\n6M/UY5/epZmtTTtQraqXAZ8AviUi71ioRFUfU9UtqrqlrMz+RTbx03BmgGcPdXD1ipIFX307l6qS\nyAqdzV3DCfn4xsRTLKHfClRNuV8JtM3WRkR8QAHQraqjqtoFoKp7gEZgzYUWbUys/uWlJrIyPFyz\nsmTuxgtUnufH7/NwsttC37hfLKH/OrBaROpEJBPYCmyf1mY7cG/09l3AC6qqIlIWPRGMiKwAVgNN\n8SndmPNr6x3h+3tPsfWKanL9iVtQ1iNCdXGA5m7bVMW435yhHx2jfwB4FqgHnlLVQyLykIjcHm32\nOFAiIg1EhnEmp3XeCOwXkX1ETvD+vqp2x/uTMGYmj798HFX46A11CX+t6pIAZ/pH6Q+OJ/y1jLkQ\nMXV/VHUHsGPasU9PuR0E7p7hef8F/NcF1mjMvPUMjfHt15q5fdMyKoti3xVroWqKc1Bgb3MvN66x\n81LGvWwTFZMSpm+A8sKRDobHQlQVBea1OcpCVRZlI8Cekz0W+sbVbBkGk3LGQ2F2NnVzUUUeFflZ\ni/KaWRlelhRk8Uaz7Ztr3M1C36Sc/a29DI1OcN0Cd8VaqKriAHubewmH7SIt414W+ialqCovN5xl\nSX4WK8tyFvW1q4qyGRidoOmszeIx7mWhb1JKQ+cgHf2jXLeqlMVeCWR59ITxvpbeRX1dY+bDQt+k\nlFcazpLr97GxsmDRX7s8z08g08u+Vgt9414W+iZldPQHOdYxyNUrShKysNpcPCJcuryAfa19i/7a\nxsTKQt+kjFcazuLzCFfVJWZhtVhsqiqkvq2f0YmQYzUYcz4W+iYlDI5OsLell83VReQkcMmFuWys\nKmQsFOZI+4BjNRhzPhb6JiXsaupiIqxcuypxC6vFYmN0kxYb1zduZaFvkl5wPMQvmrq4qCKP8rzF\nuRhrNssKsijNzWSvzeAxLmWhb5LeM/vbGRoLLfrFWDMRETZWFrLfTuYal7LQN0nvG784SVmuf9Ev\nxprNxqpCGjsHbcVN40oW+iap7W/tZV9LL1etKF70i7Fms7GqEFU4aL1940IW+iapfXPnSQKZXjZX\nFzldyjmTF4bttZO5xoUs9E3S6h0eY/u+Nt5/2XKyErT/7UIUBjKpKQnYcgzGlSz0TdLatqeV0Ykw\nv3t1jdOlvIOdzDVuZaFvkpKq8tTuFi6rLmTd0nyny3mHjVWFtPcF6egPOl2KMb/EQt8kpYOn+jnW\nMcidmyudLmVGm6oi4/o2xGPcxrZLNK4303aHP9zfhs8jjI6HF2U7xPm6eFkBXo+wr7WX9168xOly\njDnHevom6UyEw+xr6WXt0nyyM91zAneqrAwva5fksa/FxvWNu1jom6TzVscgw2MhNlcXOl3KeW2o\nLGR/q22faNzFQt8knTeae8jx+1hdnud0Kee1qaqA/uAEJ7ps+0TjHhb6JqkEx0McOT3ApsrImLmb\n2Yqbxo0s9E1SOdYxQCisXLJ88bdDnK/V5XmR7RNtXN+4iIW+SSqH2/vJ8fuoKg44XcqcvB7hkuUF\ntsyycZWYQl9EbhWRoyLSICIPzvC4X0S+E318l4jUTnu8WkQGReTP4lO2SUcToTBHTw+wbkkeHpcs\nrjaXTVWFHG7vZ2wi7HQpxgAxhL6IeIFHgduA9cA9IrJ+WrP7gB5VXQU8DHxu2uMPA/994eWadNZ0\ndojRiTDrXXgF7mw2VBYwNhH5Y2WMG8TS078SaFDVJlUdA54E7pjW5g7giejtbcDNEl3nVkTeDzQB\nh+JTsklX9e39ZHo9rCzPdbqUmG2sjJzMtRU3jVvEckXucqBlyv1W4KrZ2qjqhIj0ASUiMgL8H+AW\nwIZ2zIKFValv72d1RS4ZXveeipp+dbCqkpPp5XtvnMIbHZL64FXVTpRmDBBbT3+mwdPpV5vM1uZv\ngIdVdfC8LyByv4jsFpHdnZ2dMZRk0s2pnhH6gxNJNbQDke0TK4sCtPYMO12KMUBsod8KVE25Xwm0\nzdZGRHxAAdBN5D+CfxCRE8DHgT8XkQemv4CqPqaqW1R1S1lZ2bw/CZP6jp0ZQICLKtx9QdZMKouz\n6RwYZXQ85HQpxsQ0vPM6sFpE6oBTwFbgg9PabAfuBXYCdwEvqKoCN0w2EJG/BgZV9ZE41G3STFPn\nEEsLswj4k2+NwMrCAAqc6h1hRVnynI8wqWnOnr6qTgAPAM8C9cBTqnpIRB4SkdujzR4nMobfAHwC\neMe0TmMWajwUprl7mJWlyRmYlUXZALT2jDhciTExLq2sqjuAHdOOfXrK7SBw9xwf468XUJ8xnOwa\nJhTWpO0l5/h9FOdk0mLj+sYF3DsNwpiops5BPAK1Je6/Cnc2lUXZ1tM3rmChb1yvsXOQyqIAfhdt\nfj5flUUB+kbGGQiOO12KSXMW+sbVBoLj0ROgOU6XckGqbFzfuISFvnG11090E1ZYmaTj+ZOWFmTj\nEWy+vnGchb5xtZ2NXfg8QnUSrKp5Ppk+DxX5WdbTN46z0Deu9oumbqqKA65eeiFWkydzI5ewGOOM\n5P9NMilrZCxEfXs/NUney59UWRRgZDzEyS4b4jHOsdA3rnWwrY+JsCbFhimxmLxIy7ZPNE6y0Deu\ntbc5Eo6pEvrleVlkeMV20jKOstA3rvVmSw9VxdnkJuF6OzPxeoRlhdnss9A3DrLQN661t7mXTVVF\nTpcRV1VFAQ619TMesu0TjTMs9I0rdfQHaesLcllVodOlxFVlUTajtn2icZCFvnGlN6Pj+ZuqUy30\nI+cn7GSucYqFvnGlN1t6yPR6uHhZcu2UNZeiQAbFOZk2rm8cY6FvXOnN5l7WL8vH70veRdZmIiJs\nqCxgX0uf06WYNGWhb1xnIhTmQGsfm1JsPH/SxspC3jozwNDohNOlmDRkoW9c51jHICPjIS5LsfH8\nSZuqCgkrHDxlvX2z+Cz0jescaouE4SXLCxyuJDE2VEY+LzuZa5xgoW9c51BbP4FML3Ulyb2G/mxK\ncv1UFWfbuL5xRGpc6miS1rd2Nb/j2ItHz1Ca6+fJ11scqGhxbKwsPDct1ZjFZD194yphVdr7giwr\nzHK6lITaWFnIqd4Rzg6OOl2KSTMW+sZVuofGGJsIs6wg2+lSEmpjdGbSfhvXN4vMQt+4SltvZGep\nZYWpHfqXLM/HI7DXxvXNIrPQN67S3hfEK0J5vt/pUhIqkOljTUWeXZlrFp2FvnGVtt4RyvP9+Dyp\n/6O5qaqQvS29tn2iWVQ2e8e4hqrS1jvC2iWptd7OdJMzlsYmwvSNjPOl5xsoy/vl/2w+eFW1E6WZ\nNJD63SmTNPqDEwyNhVJ+5s6kyR3Bmrttz1yzeGIKfRG5VUSOikiDiDw4w+N+EflO9PFdIlIbPX6l\niOyNvu0Tkd+Mb/kmlbSnyUncSWV5frIyPBb6ZlHNGfoi4gUeBW4D1gP3iMj6ac3uA3pUdRXwMPC5\n6PGDwBZV3QTcCvyLiNiQkplRW98IAiwpSI+evkeEqqIALRb6ZhHF0tO/EmhQ1SZVHQOeBO6Y1uYO\n4Ino7W3AzSIiqjqsqpNLCWYBdsbKzKq9L0hxTmbKLad8PlXFATr6g4yOh5wuxaSJWEJ/OTD1evjW\n6LEZ20RDvg8oARCRq0TkEHAA+P0pfwTOEZH7RWS3iOzu7Oyc/2dhUsLpvmDa9PInVRcHUKClZ8Tp\nUkyaiCX0ZYZj03vss7ZR1V2qejFwBfApEXnHb7WqPqaqW1R1S1lZWQwlmVQzNhGme2iMpWkW+lXR\n7RNbemyIxyyOWEK/Faiacr8SaJutTXTMvgDontpAVeuBIeCShRZrUldHfxAFluSnx0ncSdmZXsrz\n/DR3WeibxRFL6L8OrBaROhHJBLYC26e12Q7cG719F/CCqmr0OT4AEakBLgJOxKVyk1JO9wWB9DmJ\nO1VVcYCWnmG7SMssijlDPzoG/wDwLFAPPKWqh0TkIRG5PdrscaBERBqATwCT0zqvB/aJyF7ge8Af\nqurZeH8SJvm19wfx+zwUBjKcLmXRVRcHGB4L0TU45nQpJg3ENH1SVXcAO6Yd+/SU20Hg7hme903g\nmxdYo0kDp/uCVORn4ZGZTg+lturoRVonu4cpzUvtNYeM8+yKXOM4VeV0/0haDu1A5CKt7AwvJ7uG\nnC7FpAELfeO4vpFxguNhluSnZ+h7RKgpCXDCTuaaRWChbxx3uj9yEjfdpmtOVVuSw9nBUQZH33EZ\nizFxZaFvHDc5c6ciTXv6ADUl0XF9G+IxCWahbxzX3hekKJBBVkb6LL8w3fLCbHwe4aQN8ZgEs9A3\njjvdH2RJiu+JOxef10NlUTYnrKdvEsxC3zhqPBSma3CUJSm+PWIsakpyaOsdYWwi7HQpJoVZ6BtH\ndfQHCStp39MHqC0JEFZbh8ckloW+cdTkSdx0nrkzqbo4B8FO5prEstA3jmrvD5Lp9VCck+l0KY7L\nzvRSkZ9F01kLfZM4FvrGUZHlF/xpufzCTFaW5dDcNUzQNlUxCWKhbxyjqrT3jbDUxvPPWVmWy0RY\neeNkj9OlmBRloW8c09YXjCy/YOP559SW5uAReKXRFqM1iWGhbxxT39YP2EncqbIyvFQWBXilocvp\nUkyKstA3jqlvj4R+ui60NpuVZTnsb+2lPzjudCkmBVnoG8ccOT1AcU4m/jRefmEmK8pyCSvsauqe\nu7Ex82ShbxxT395vvfwZVBcH8Ps8vNJg4/om/iz0jSOGxyY43jVk4/kzyPB6uKK2mJ2NNq5v4s9C\n3zji6OkBVO0k7myuW1XK0Y6Bc1csGxMvFvrGEfXtA4CtuTOb96wrB+C5+g6HKzGpxkLfOKK+vZ9c\nv4+iQIbTpbjSqvJcakoC/OSwhb6JLwt944j69n7WLslDbPmFGYkIt6yrYGdjl22haOLKQt8sunBY\nOXJ6gHVL850uxdVuWV/BWCjMS0c7nS7FpBALfbPoTvWOMDg6YaE/h8triigKZPATG9c3cWShbxbd\n4eiVuOuW5jlcibv5vB5uWlvBC0fOMB6y3bRMfFjom0VX396PCFy0xEJ/Lresr6BvZJzXT9jVuSY+\nYgp9EblVRI6KSIOIPDjD434R+U708V0iUhs9fouI7BGRA9H3N8W3fJOM6tv7qSvJIZDpc7oU17tx\nTSnZGV5+uK/d6VJMipgz9EXECzwK3AasB+4RkfXTmt0H9KjqKuBh4HPR42eB31DVS4F7gW/Gq3CT\nvOrb7SRurAKZPm67dAlP72uzjVVMXMTS078SaFDVJlUdA54E7pjW5g7giejtbcDNIiKq+qaqtkWP\nHwKyRMQfj8JNchoIjtPcPWzj+fNw9+VVDIxO8Oyh006XYlJALKG/HGiZcr81emzGNqo6AfQBJdPa\n3Am8qaqjCyvVpIKjpyNX4q5dYj39WF1VV0xlUTbb9rQ6XYpJAbGE/kxXz+h82ojIxUSGfP7XjC8g\ncr+I7BaR3Z2dNic5lU2uob9umYV+rDwe4c7NlbzccJZTvSNOl2OSXCyh3wpUTblfCbTN1kZEfEAB\n0B29Xwl8D/iQqjbO9AKq+piqblHVLWVlZfP7DExSqT89QH6Wj2W20Nq83HV5JarwvTest28uTCyh\n/zqwWkTqRCQT2Apsn9ZmO5ETtQB3AS+oqopIIfAM8ClVfSVeRZvkdbitn3VL8235hXmqKg5w9Ypi\nvrO7hVB4+j/axsRuztCPjtE/ADwL1ANPqeohEXlIRG6PNnscKBGRBuATwOS0zgeAVcBficje6Ft5\n3D8LkxTGQ2EOt/ezobLA6VKS0oevraOle4QfHbQTumbhYpoorao7gB3Tjn16yu0gcPcMz/sM8JkL\nrNGkiGMdA4xNhLm0stDpUpLSLesrqCvN4bGfNfK+S5fYf0tmQeyKXLNoDrT2AbBhufX0F8LrET56\nQx37WvvYddyu0DULY6FvFs3+U33kZfmoKQk4XUrSunNzJSU5mTz2syanSzFJykLfLJoDrX1sqCyw\nYYkLkJXh5UPX1PLCkTMcOd3vdDkmCVnom0UxOhHiyOl+Ll1u4/kX6t5ra8jz+/jCc285XYpJQhb6\nZlEcPT3AeEht5k4cFAYy+egNK/jRodPnzpMYEysLfbMo9kfD6VI7iRsXH7m+lsJABp9/7qjTpZgk\nY2vbmkVxoLWPokAGlUXZTpeSEn64r52r60r40aHT/N2OempKct7R5oNXVTtQmXE76+mbRbH/VB8b\nKgvtJG4cXb2ihFy/j+cO23aKJnbW0zcJFxwPcaxjgPess4uxY/WtXc1ztsn0eXjXRWU8vb+dxs5B\nVpblLkJlJtlZT98k3MFTfYTCauP5CXBFbTEF2Rk8d7gDVVuTx8zNQt8k3J6TPQBsrilyuJLUk+H1\n8O6LymnuHuZYx4DT5ZgkYKFvEm7PyR5qSwKU5tqmaYlweU0RxTmZ1ts3MbHQNwmlquw52cPlNcVO\nl5KyvB7h5rXltPUFOdRmV+ma87PQNwl1smuYrqExLrehnYTaWFVIWa6fn9R3ELbevjkPm71jEuqR\nFxsAON0fjGlGilkYjwjvWV/Bt19rZn9rH5uqbLkLMzPr6ZuEau4axu/zUJ5n4/mJdvGyfJYWZPF8\nfYftrmVmZaFvEqq5e5jq4gAeuygr4TwivGddBV1DY+xt6XG6HONSFvomYfpGxunoD1Jt6+cvmrVL\n8lhWkMVLx85ab9/MyELfJMzell4UqCl+57owJjFEhBvXlHF2cJQfH7K9dM07WeibhNlzohsBW2Rt\nkV2yvICSnEy+/NNGm7dv3sFC3yTML5q6WVaYTVaG1+lS0opHhBtXl3HgVB+vNHQ5XY5xGQt9kxDD\nYxO82dLDijIb2nHCZdWFlOf5+fJPG5wuxbiMhb5JiN0nehgPqa386BCf18NHrq/j1cYuDrXZ7lrm\nbRb6JiFebezC5xFqbOaOY+65sppAppfHf37c6VKMi9gVuSYhdjZ1samqEL/PxvOd8sz+djZWFfL9\nvadYXZFHQXbGO9rY7lrpx3r6Ju76g+McaO3l2pUlTpeS9q5bWYoq/KLJTuiaCAt9E3evNXUTVrhm\nZanTpaS94pxM1i/LZ9fxLkYnQk6XY1wgptAXkVtF5KiINIjIgzM87heR70Qf3yUitdHjJSLyoogM\nisgj8S3duNWrjV34fR4uq7ZFv9zghlWlBMfDvHHSlmYwMYS+iHiBR4HbgPXAPSKyflqz+4AeVV0F\nPAx8Lno8CPwV8Gdxq9i43quNZ9lSW2Tz812iuiSHqqJsXmnssmWXTUw9/SuBBlVtUtUx4Engjmlt\n7gCeiN7eBtwsIqKqQ6r6MpHwN2mgoz/IkdMDXGtDO65y/eoyuofGqG+3TVbSXSyhvxxomXK/NXps\nxjaqOgH0ATGfxROR+0Vkt4js7uzsjPVpxoVePHIGgJvWljtciZlq/dJ8igIZvPzWWadLMQ6LJfRn\nWhN3+v+IsbSZlao+pqpbVHVLWVlZrE8zLvTCkTMsK8hi7ZI8p0sxU3g9wrUrSznZPUxL97DT5RgH\nxRL6rUDVlPuVQNtsbUTEBxQA3fEo0CSP0YkQLzec5d1ryxFbP991ttQUkZXh4eUG6+2ns1hC/3Vg\ntYjUiUgmsBXYPq3NduDe6O27gBfUlvdLO68d72Z4LGRDOy7lz/ByRW0xB0/10TM05nQ5xiFzhn50\njP4B4FmgHnhKVQ+JyEMicnu02eNAiYg0AJ8Azk3rFJETwOeBD4tI6wwzf0yKeOHIGfw+j53EdbFr\nVpQgEplhZdJTTMswqOoOYMe0Y5+ecjsI3D3Lc2svoD7jYlM3OldVfrC3jdqSHL735ikHqzLnUxjI\n5NLlBew+2cPN6yqcLsc4wK7INXFxdnCM7qExLrITuK53/aoyRifCvH7CTrulIwt9ExeHo/O/LfTd\nb3lRNnWlObza2MV4KOx0OWaRWeibuDjQ2ktVUTZFgUynSzExuHF1KX0j43zvDRuKSzcW+uaCnR0c\npa0vyKWVttZOslhTkcfywmweebGBCevtpxULfXPB9rdGdma6dHmBw5WYWIkIN60tp7l7mB/snX7Z\njUllFvrmgh041UtNcWDGTTqMe61dkse6pfk88mIDobBdVpMuLPTNBenoD9LRP8qlldbLTzYiwp/c\nvIrjZ4f4vk2zTRu2XWKMps5Jn0m6bjt34FQfAlxiQztJ6b3rl3Dp8gL+8cdHed+lS8nOtOWwU531\n9M2ChVXZ29JLXWkO+Vk2tJOMPB7hL39tHe19Qb768yanyzGLwELfLFhj5yDdQ2NsqS12uhRzAa5a\nUcKtFy/hKy81cqbftr5IdRb6ZsFeP95NINPLxcvynS7FXKAHb1vLeCjMPzx71OlSTIJZ6JsFOTMQ\n5HB7P5uri8jw2o9RsqstzeG+61ewbU8rLx2zjYxSmf22mgXZtqeVsMIVNrSTMj7+ntWsKs/l/2zb\nT9/IuNPlmASx0DfzFg4rT77WQl1pDmV5fqfLMXGSleHl87+9kc7BUf7mh4ecLsckiIW+mbcfH+6g\nuXuYq+qsl59qNlQW8rF3reS7b5ziqd0tcz/BJB0LfTMvqso/vfAWtSUBLl5mc/NT0R/dvJobVpfy\n5989YJutpCALfTMvLxw5w6G2fj727lV4PbYPbirK8Hp45IObqSvN4fe/uYeGM4NOl2TiyELfxExV\n+dLzb1FVnM37L1vudDkmgQqyM/jah68g0+dh62M7ORBdVM8kPwv98xgPhfn5W518+7Vm6tv7ae8b\nIZ33e3/pWCf7Wvv4w3etsmkDJu1yAAANSElEQVSaaaCqOMCT91+D3+dl62M7+ZlN5UwJtvbODHqH\nx/j8c8f44b42eoZ/eepaVVE2N6+rYHV5LiLpM7wRHA/x0NOHqSrO5s7NlU6XYxbJqvJcvvuH13Lv\n117jw//2Gr93wwr+9y1ryMqwNXqSlYX+ND853MGnvneAnqEx3nfpUn5tw1IuXpbPf/yimVO9I/zs\nWCdff/UEF1XkcffllQT86fEl/PKLDTR1DvGNj1xJps96+emkIj+LbX9wLZ995jD/8rMmflLfwZ+/\nbx03rS1Pq45PqkiPxIrBRCjMZ56p5+uvnmDtkjy+/j+v+KXZKVXFAaqKA2ypLWJXUzc/OnSaR15s\n4J4rq6kqDjhYeeId6xjgKy818puXLefGNWVOl2MckOv38Xe/tYHbLlnKX3z/APc9sZt1S/P5vRvq\n+NWLl5CTJp2fVGDfKSLDOQ98601ebjjLR66r48Hb1s7am/V5PFy3qpSakgDfeq2Zx37exG9dtjxl\nl1YenQjxyW37yfX7+MtfW+d0OSbO5loyfCb337CSfS29/PTYGT7x1D4yvPtZtzSfNeV5rCzPnXEz\nnVT9/UhGaR/6DWcG+egTr9PWG+Qf7trAb2+piul5lUUBHnj3Kr61q5n/3NNKRX4Wn7hlDZ4UmsYY\nDit/+tQ+9rb08uXf2UxJrl19a8DrETbXFLGpupCTXcPsa+3l0Km+c9tmlub6WVmWw8qyXFaW5doa\n/S6T1qH/4tEz/PG33sSf4eHb91/F5TXzu8I0kOnjw9fVsn1vG4+82MCR0/38490bKQxkJqjixfX3\nPzrC0/vb+dRta3nfpUudLse4jEeEutIc6kpzuH3jMjr6gzSeGaSxc4g3m3vZdbwbAZYVZnOye4hr\nV5ZyRW0Rgcy0jh3HidumIG7ZskV3796d0NcIjod4+Llj/OvPm1i7JJ9/vXcLywuzz/uc8/0brKqM\nh8J8dkc95XlZ/NMHL2NzdVG8y140oxMh/vaZep7YeZJ7r6nhr2+/eMYTdgsZGjDpYSIcprV7hMbO\nQRo6B2nrHWE8pPg8wqaqQq5eUcLmmkI2Vhbaf5BxIiJ7VHXLXO1i+pMrIrcCXwS8wFdV9e+nPe4H\nvgFcDnQBH1DVE9HHPgXcB4SAP1bVZ+fxecSVqvJqYxef/sFBGjuHuOfKav7q19ddcM9DRPjwdXVs\nqi7iY//xBnd+5VU+sKWKP/vViyhNsh/ok11D/NG332R/ax/3XV/Hn79vnc3QMPPm83ioLc2htjSH\nm9dV8P7LlrH7RA87m7p4tbGLL/+0gcm92Cvy/awuz2NFWQ7leX7K87Ioy/dTnuenLNdPYSDTZozF\n0ZxpJyJe4FHgFqAVeF1Etqvq4SnN7gN6VHWViGwFPgd8QETWA1uBi4FlwE9EZI2qhuL9iZzP0OgE\nLx49w7/+/Dj7WnpZXpjNN++7khtWx3cmyqaqQv774zfwpZ+8xddfPcHT+9v5rc3L+e0tVa7eQ1ZV\nqW8f4F9/3sT2fW0EMr388/+4nFsvWeJ0aSZFBDJ93Lim7Nzsr6HRCQ6e6mNvSy9HOwZoPDPID/a2\nzbqkc67fR2Egg+KcTAoDmRQHMijO8bOkwE9FfhYV+Vksyc9iSUGWXUMwh1i6uFcCDaraBCAiTwJ3\nAFND/w7gr6O3twGPSKR7eAfwpKqOAsdFpCH68XbGp/y3hcJK7/AYPcPj9AyP0dw1TGPnIPtb+3jt\neDdjoTDVxQE++5uXcOfmyoT9YORnZfCXv76ee66q5kvPv8WTr7fwjZ0nqSzK5vKaIjZUFlJZlM2y\ngmzys31kZ3jJyvSSneGN61WuqkpYI1+XsEbexkPKQHCcvpFx2nuDNHcPc6itn52NZ2nrCxLI9HLv\nNbX83o11LC04/3CXMfMx21BgXlYGW2qK2RI9nzYeCjMQnGAgOM5AcILB0QmGx0IMj739vqlzkINj\nIQaDE4yFwu/4mPlZPpYUvP2HoCI/i4qCLIqj/zH4vEKm10OG18NEOMzIWIihsRAj0dd4peEswfEw\nI+MhgufeIvfDYUUkskyFRwSvRwhkesnN8pHnz4i8z/KR5/eRl/X2/dzo/bwp97MyvEz+Dz3537RA\nwieDxBL6y4Gpa6y2AlfN1kZVJ0SkDyiJHv/FtOcmZNGWvS293PmVV3/pmM8jrCzL5d5ra3j3ReVc\nWVeMb5GWD1hZlssXt17GQ8PjbN/fxs7Gs+xs7OIHe9tmfY5HIifHACZHVASBc7d552PR++FoyIfD\nSkiVWE/VFAYyuGZFCX/w7lJ+Y8PSlDkJbZJThtdDcU4mxTmx/RwGx0P0j4zTH5ygf2ScurIcOvqD\nnO4L0tEf5FjHAJ0Do+eGkmKV6fWQleEhKyPSIcv1+yjJzcTn8aCqVJcEznWohsdCDAQnODswFPlj\nNRr5Y7WQ06W/vmEpj3xw8/yfOA+xhP5Mf3amfzqztYnluYjI/cD90buDIhK3jTobgR/H50OVArOu\nM/s78XmNhTpvbedzEtgH/HNcyzlnwXUtAqtt/txaF6RIbY8Cjy48TGpiaRRL6LcCUyevVwLTu6uT\nbVpFxAcUAN0xPhdVfQx4LJaCnSIiu2M5M+4Et9bm1rrAalsIt9YFVtt8xDLW8TqwWkTqRCSTyInZ\n7dPabAfujd6+C3hBI3NBtwNbRcQvInXAauC1+JRujDFmvubs6UfH6B8AniUyZfNrqnpIRB4Cdqvq\nduBx4JvRE7XdRP4wEG33FJGTvhPAxxZ75o4xxpi3xTRBXVV3ADumHfv0lNtB4O5ZnvtZ4LMXUKNb\nuHn4ya21ubUusNoWwq11gdUWM9ddkWuMMSZx7DI3Y4xJIxb6cxCRW0XkqIg0iMiDDtfyNRE5IyIH\npxwrFpHnROSt6HtHFv0RkSoReVFE6kXkkIj8iRvqE5EsEXlNRPZF6/qb6PE6EdkVres70UkKjhAR\nr4i8KSJPu6k2ETkhIgdEZK+I7I4ec8vPW6GIbBORI9GfuWucrk1ELop+rSbf+kXk407XNZ2F/nlM\nWYLiNmA9cE90aQmnfB24ddqxB4HnVXU18Hz0vhMmgD9V1XXA1cDHol8rp+sbBW5S1Y3AJuBWEbma\nyFIhD0fr6iGylIhT/gSon3LfTbW9W1U3TZly6PT3c9IXgR+p6lpgI5Gvn6O1qerR6NdqE5F1yIaB\n7zld1zuoqr3N8gZcAzw75f6ngE85XFMtcHDK/aPA0ujtpcBRp79u0Vp+QGS9JtfUBwSAN4hcUX4W\n8M30fV7kmiqJBMFNwNNELmh0S20ngNJpxxz/fgL5wHGi5yTdVNuUWt4LvOK2ulTVevpzmGkJioQs\nI3EBKlS1HSD6vtzhehCRWuAyYBcuqC86fLIXOAM8R+RC7V5VnYg2cfL7+gXgk8DkIjIluKc2BX4s\nInuiV82DC76fwAqgE/i36LDYV0UkxyW1TdoKfDt62011WejPIaZlJMzbRCQX+C/g46ra73Q9AKoa\n0si/3JVEFvybad/HRf++isivA2dUdc/UwzM0depn7jpV3UxkePNjInKjQ3VM5wM2A19R1cuAIZwe\nMpkieg7mduA/na5lJhb65xfTMhIO6xCRpQDR92ecKkREMogE/n+o6nfdVp+q9gI/JXLOoTC6ZAg4\n9329DrhdRE4ATxIZ4vmCS2pDVdui788QGZu+End8P1uBVlXdFb2/jcgfATfUBpE/km+oakf0vlvq\nAiz05xLLEhROm7oExr1ExtIXnUTWhn0cqFfVz095yNH6RKRMRAqjt7OB9xA56fcikSVDHKkLQFU/\npaqVqlpL5GfrBVX9HTfUJiI5IpI3eZvIGPVBXPDzpqqngRYRuSh66GYiV/07XlvUPbw9tAPuqSvC\nyRMKyfAGvA84RmQc+C8cruXbQDswTqS3cx+RMeDngbei74sdqu16IsMQ+4G90bf3OV0fsAF4M1rX\nQeDT0eMriKwD1UDk33C/w9/bdwFPu6W2aA37om+HJn/2nf5+TqlvE7A7+n39PlDkhtqITBboAgqm\nHHO8rqlvdkWuMcakERveMcaYNGKhb4wxacRC3xhj0oiFvjHGpBELfWOMSSMW+sYYk0Ys9I3h3DLC\nIyIyKCI9IvKMiFRFH/u6iKiI3D7tOV+IHv9w9P6HReRlB8o3JmYW+sa87TdUNZfISogdwD9NeewY\nb19VSXSZhLuJXLRnTNKw0DdmGo3s+byNyB4Kk34IXDdlA4xbiVwNenqRyzPmgljoGzONiASADwC/\nmHI4SGQNla3R+x8CvrHIpRlzwSz0jXnb90WkF+gnsgHM/532+DeAD4lIAfArRNZ8MSapWOgb87b3\nq2oh4AceAF4SkSWTD6rqy0AZ8JdEFkcbcaZMYxbOQt+YaTSy6cp3gRCR1UOn+nfgT7GhHZOkLPSN\nmUYi7iCyXG/9tIe/RGTo52eLXpgxceCbu4kxaeOHIhIisi/ASeBeVT0U2R8mQlW7iayJbkxSsvX0\njTEmjdjwjjHGpBELfWOMSSMW+sYYk0Ys9I0xJo1Y6BtjTBqx0DfGmDRioW+MMWnEQt8YY9KIhb4x\nxqSR/w8rB37COJdHAAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xf43b668>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure()\n",
    "sns.distplot(data.BMI.values, bins=30, kde=True)\n",
    "plt.xlabel('BMI', fontsize=12)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "BMI_median = data[data.BMI>0]['BMI'].median()\n",
    "data['BMI'].replace(0,BMI_median, inplace = True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xf2b6358>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure()\n",
    "sns.distplot(data.DiabetesPedigreeFunction.values, bins=30, kde=True)\n",
    "plt.xlabel('DiabetesPedigreeFunction', fontsize=12)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xfce5cc0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure()\n",
    "sns.distplot(data.Age.values, bins=30, kde=True)\n",
    "plt.xlabel('Age', fontsize=12)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "data['Age']=np.exp2(data['Age'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xf0682e8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.countplot(data.Outcome);\n",
    "plt.xlabel('Outcome');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 3、数据分割&特征工程"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "y = data['Outcome'].values\n",
    "X = data.drop('Outcome', axis = 1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "#将数据分割训练数据与测试数据\n",
    "from sklearn.model_selection import train_test_split\n",
    "\n",
    "# 随机采样20%的数据构建测试样本，其余作为训练样本\n",
    "X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=33, test_size=0.2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# 数据标准化\n",
    "from sklearn.preprocessing import StandardScaler\n",
    "\n",
    "# 初始化特征的标准化器\n",
    "ss_X = StandardScaler()\n",
    "\n",
    "# 分别对训练和测试数据的特征进行标准化处理\n",
    "X_train = ss_X.fit_transform(X_train)\n",
    "X_test = ss_X.transform(X_test)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 4、Logistic Regression"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "GridSearchCV(cv=5, error_score='raise',\n",
       "       estimator=LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,\n",
       "          intercept_scaling=1, max_iter=100, multi_class='ovr', n_jobs=1,\n",
       "          penalty='l2', random_state=None, solver='liblinear', tol=0.0001,\n",
       "          verbose=0, warm_start=False),\n",
       "       fit_params=None, iid=True, n_jobs=1,\n",
       "       param_grid={'penalty': ['l1', 'l2'], 'C': [0.001, 0.01, 0.1, 1, 10, 100, 1000]},\n",
       "       pre_dispatch='2*n_jobs', refit=True, return_train_score='warn',\n",
       "       scoring='neg_log_loss', verbose=0)"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "penaltys_lr = ['l1','l2']\n",
    "Cs_lr = [0.001, 0.01, 0.1, 1, 10, 100, 1000]\n",
    "parameters_lr = dict(penalty =penaltys_lr, C =Cs_lr)\n",
    "estimator_lr= LogisticRegression()\n",
    "grid_lr= GridSearchCV(estimator_lr,parameters_lr,cv=5, scoring='neg_log_loss')\n",
    "grid_lr.fit(X_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Anaconda\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('mean_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\Anaconda\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('split0_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\Anaconda\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('split1_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\Anaconda\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('split2_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\Anaconda\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('split3_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\Anaconda\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('split4_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n",
      "C:\\Anaconda\\lib\\site-packages\\sklearn\\utils\\deprecation.py:122: FutureWarning: You are accessing a training score ('std_train_score'), which will not be available by default any more in 0.21. If you need training scores, please set return_train_score=True\n",
      "  warnings.warn(*warn_args, **warn_kwargs)\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "{'mean_fit_time': array([ 0.00219994,  0.004     ,  0.00239992,  0.00360003,  0.00320001,\n",
       "         0.00399995,  0.00339999,  0.00440001,  0.00339999,  0.00440001,\n",
       "         0.00360003,  0.00420008,  0.01780005,  0.00499997]),\n",
       " 'mean_score_time': array([ 0.00480008,  0.00320001,  0.00279999,  0.00339994,  0.00299993,\n",
       "         0.00260005,  0.00559998,  0.00439997,  0.00260005,  0.00240002,\n",
       "         0.00320001,  0.00299997,  0.00299997,  0.00300002]),\n",
       " 'mean_test_score': array([-0.69314718, -0.64186403, -0.67493752, -0.53102331, -0.48595696,\n",
       "        -0.48535212, -0.48261992, -0.4835943 , -0.48328005, -0.48251938,\n",
       "        -0.48334995, -0.48231751, -0.48254389, -0.4824032 ]),\n",
       " 'mean_train_score': array([-0.69314718, -0.6405294 , -0.67358173, -0.52456076, -0.47841951,\n",
       "        -0.47198598, -0.46809481, -0.46793303, -0.46785649, -0.46785021,\n",
       "        -0.46784828, -0.46784376, -0.46776124, -0.46781378]),\n",
       " 'param_C': masked_array(data = [0.001 0.001 0.01 0.01 0.1 0.1 1 1 10 10 100 100 1000 1000],\n",
       "              mask = [False False False False False False False False False False False False\n",
       "  False False],\n",
       "        fill_value = ?),\n",
       " 'param_penalty': masked_array(data = ['l1' 'l2' 'l1' 'l2' 'l1' 'l2' 'l1' 'l2' 'l1' 'l2' 'l1' 'l2' 'l1' 'l2'],\n",
       "              mask = [False False False False False False False False False False False False\n",
       "  False False],\n",
       "        fill_value = ?),\n",
       " 'params': [{'C': 0.001, 'penalty': 'l1'},\n",
       "  {'C': 0.001, 'penalty': 'l2'},\n",
       "  {'C': 0.01, 'penalty': 'l1'},\n",
       "  {'C': 0.01, 'penalty': 'l2'},\n",
       "  {'C': 0.1, 'penalty': 'l1'},\n",
       "  {'C': 0.1, 'penalty': 'l2'},\n",
       "  {'C': 1, 'penalty': 'l1'},\n",
       "  {'C': 1, 'penalty': 'l2'},\n",
       "  {'C': 10, 'penalty': 'l1'},\n",
       "  {'C': 10, 'penalty': 'l2'},\n",
       "  {'C': 100, 'penalty': 'l1'},\n",
       "  {'C': 100, 'penalty': 'l2'},\n",
       "  {'C': 1000, 'penalty': 'l1'},\n",
       "  {'C': 1000, 'penalty': 'l2'}],\n",
       " 'rank_test_score': array([14, 12, 13, 11, 10,  9,  5,  8,  6,  3,  7,  1,  4,  2]),\n",
       " 'split0_test_score': array([-0.69314718, -0.64349446, -0.67125665, -0.53291867, -0.48958984,\n",
       "        -0.48150011, -0.47307102, -0.47503068, -0.47206439, -0.46797537,\n",
       "        -0.47189805, -0.46677066, -0.46785154, -0.46717288]),\n",
       " 'split0_train_score': array([-0.69314718, -0.64023569, -0.66308919, -0.52622806, -0.48097596,\n",
       "        -0.47603312, -0.47248813, -0.47241972, -0.4723589 , -0.47235671,\n",
       "        -0.47235755, -0.47233651, -0.47198257, -0.472188  ]),\n",
       " 'split1_test_score': array([-0.69314718, -0.64639392, -0.67817247, -0.54048904, -0.49135266,\n",
       "        -0.48953047, -0.48534937, -0.48528207, -0.48513117, -0.48513636,\n",
       "        -0.48512469, -0.48512503, -0.48512291, -0.48512374]),\n",
       " 'split1_train_score': array([-0.69314718, -0.63831717, -0.68051748, -0.52235117, -0.47683279,\n",
       "        -0.47083088, -0.46711509, -0.46692088, -0.4668472 , -0.46683999,\n",
       "        -0.46683782, -0.46683766, -0.4668373 , -0.46683753]),\n",
       " 'split2_test_score': array([-0.69314718, -0.63954399, -0.68083225, -0.52186891, -0.4692276 ,\n",
       "        -0.47616961, -0.47662209, -0.47862638, -0.47947672, -0.47969   ,\n",
       "        -0.47979322, -0.47981255, -0.47988327, -0.47982519]),\n",
       " 'split2_train_score': array([-0.69314718, -0.64173512, -0.68354759, -0.52738688, -0.48182233,\n",
       "        -0.47343406, -0.46911857, -0.46892356, -0.46883412, -0.46882648,\n",
       "        -0.46882335, -0.46882266, -0.46878132, -0.46882219]),\n",
       " 'split3_test_score': array([-0.69314718, -0.63762602, -0.67278168, -0.52271162, -0.48311996,\n",
       "        -0.48567209, -0.48800138, -0.48917365, -0.49010916, -0.49024226,\n",
       "        -0.49034721, -0.49036166, -0.49033659, -0.49037362]),\n",
       " 'split3_train_score': array([-0.69314718, -0.64244852, -0.67199197, -0.52533337, -0.47757947,\n",
       "        -0.47002443, -0.46576187, -0.46556474, -0.46547753, -0.46546996,\n",
       "        -0.46546707, -0.46546648, -0.46545003, -0.46546614]),\n",
       " 'split4_test_score': array([-0.69314718, -0.64223503, -0.67170491, -0.53709723, -0.49643517,\n",
       "        -0.49395149, -0.49021227, -0.4899991 , -0.48980264, -0.48979135,\n",
       "        -0.48977433, -0.48977253, -0.48976601, -0.48977023]),\n",
       " 'split4_train_score': array([-0.69314718, -0.6399105 , -0.66876242, -0.52150434, -0.47488699,\n",
       "        -0.46960741, -0.46599041, -0.46583627, -0.4657647 , -0.46575791,\n",
       "        -0.46575561, -0.46575549, -0.46575499, -0.46575504]),\n",
       " 'std_fit_time': array([ 0.00040004,  0.00154917,  0.00048998,  0.00080003,  0.00040009,\n",
       "         0.        ,  0.00048986,  0.00048988,  0.00048986,  0.00079995,\n",
       "         0.0004899 ,  0.00040002,  0.01133841,  0.00063249]),\n",
       " 'std_score_time': array([  4.62173271e-03,   9.79822223e-04,   4.00066376e-04,\n",
       "          8.00025464e-04,   1.16800773e-07,   4.89862441e-04,\n",
       "          2.79997076e-03,   8.00037384e-04,   4.89862441e-04,\n",
       "          4.89901382e-04,   3.99971008e-04,   9.53674316e-08,\n",
       "          9.53674316e-08,   0.00000000e+00]),\n",
       " 'std_test_score': array([ 0.        ,  0.00305123,  0.00384289,  0.00751141,  0.00936805,\n",
       "         0.00616905,  0.00666297,  0.00589318,  0.00684337,  0.00826142,\n",
       "         0.00690722,  0.0087048 ,  0.00830529,  0.00856051]),\n",
       " 'std_train_score': array([ 0.        ,  0.00144914,  0.00752688,  0.0022622 ,  0.00260064,\n",
       "         0.0024214 ,  0.00249721,  0.0025354 ,  0.00254091,  0.00254266,\n",
       "         0.00254381,  0.00253644,  0.00241166,  0.00248409])}"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# view the complete results (list of named tuples)\n",
    "grid_lr.cv_results_"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.482317511787\n",
      "{'penalty': 'l2', 'C': 100}\n"
     ]
    }
   ],
   "source": [
    "# examine the best model\n",
    "print(-grid_lr.best_score_)\n",
    "print(grid_lr.best_params_)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xf187eb8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plot CV误差曲线\n",
    "from matplotlib import pyplot\n",
    "test_means = grid_lr.cv_results_[ 'mean_test_score' ]\n",
    "test_stds = grid_lr.cv_results_[ 'std_test_score' ]\n",
    "train_means = grid_lr.cv_results_[ 'mean_train_score' ]\n",
    "train_stds = grid_lr.cv_results_[ 'std_train_score' ]\n",
    "\n",
    "# plot results\n",
    "n_Cs = len(Cs_lr)\n",
    "number_penaltys = len(penaltys_lr)\n",
    "test_scores = np.array(test_means).reshape(n_Cs,number_penaltys)\n",
    "train_scores = np.array(train_means).reshape(n_Cs,number_penaltys)\n",
    "test_stds = np.array(test_stds).reshape(n_Cs,number_penaltys)\n",
    "train_stds = np.array(train_stds).reshape(n_Cs,number_penaltys)\n",
    "\n",
    "x_axis = np.log10(Cs_lr)\n",
    "for i, value in enumerate(penaltys_lr):\n",
    "    #pyplot.plot(log(Cs), test_scores[i], label= 'penalty:'   + str(value))\n",
    "    pyplot.errorbar(x_axis, -test_scores[:,i], yerr=test_stds[:,i] ,label = penaltys_lr[i] +' Test')\n",
    "    pyplot.errorbar(x_axis, -train_scores[:,i], yerr=train_stds[:,i] ,label = penaltys_lr[i] +' Train')\n",
    "    \n",
    "pyplot.legend()\n",
    "pyplot.xlabel( 'log(C)' )                                                                                                      \n",
    "pyplot.ylabel( 'neg-logloss' )\n",
    "pyplot.savefig('Logisticgrid_lrSearchCV_C.png' )\n",
    "\n",
    "pyplot.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.linear_model import LogisticRegression\n",
    "lr= LogisticRegression(penalty='l2',C=1)\n",
    "lr.fit(X_train,y_train)\n",
    "y_train_pro=lr.predict_proba(X_train)\n",
    "y_test_pro=lr.predict_proba(X_test)  \n",
    "y_train_pred=lr.predict(X_train)\n",
    "y_test_pred=lr.predict(X_test)  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The log_loss of LogisticRegression on train is 0.469329962281\n",
      "The log_loss of LogisticRegression on test is 0.458583428529\n",
      "The accuracy of LogisticRegression on train is 0.764705882353\n",
      "The accuracy of LogisticRegression on test is 0.779220779221\n"
     ]
    }
   ],
   "source": [
    "#打印logloss和准确率\n",
    "lr_train_logloss = log_loss(y_train, y_train_pro)\n",
    "lr_test_logloss = log_loss(y_test, y_test_pro)\n",
    "lr_train_accuracy = accuracy_score(y_train, y_train_pred)\n",
    "lr_test_accuracy = accuracy_score(y_test, y_test_pred)\n",
    "print 'The log_loss of LogisticRegression on train is', lr_train_logloss\n",
    "print 'The log_loss of LogisticRegression on test is', lr_test_logloss\n",
    "print 'The accuracy of LogisticRegression on train is', lr_train_accuracy\n",
    "print 'The accuracy of LogisticRegression on test is', lr_test_accuracy"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 5、线性SVM"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "GridSearchCV(cv=5, error_score='raise',\n",
       "       estimator=LinearSVC(C=1.0, class_weight=None, dual=True, fit_intercept=True,\n",
       "     intercept_scaling=1, loss='squared_hinge', max_iter=1000,\n",
       "     multi_class='ovr', penalty='l2', random_state=None, tol=0.0001,\n",
       "     verbose=0),\n",
       "       fit_params=None, iid=True, n_jobs=1,\n",
       "       param_grid={'C': [0.001, 0.01, 0.1, 1, 10, 100, 1000]},\n",
       "       pre_dispatch='2*n_jobs', refit=True, return_train_score='warn',\n",
       "       scoring='accuracy', verbose=0)"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from sklearn.svm import LinearSVC\n",
    "parameters_lrsvm = { 'C':[0.001, 0.01, 0.1, 1, 10, 100, 1000]}\n",
    "estimator_lrsvm= LinearSVC()\n",
    "grid_lrsvm= GridSearchCV(estimator_lrsvm, parameters_lrsvm,cv=5, scoring='accuracy')\n",
    "grid_lrsvm.fit(X_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'mean_fit_time': array([ 0.00300002,  0.00459995,  0.01799989,  0.10159993,  0.09640007,\n",
       "         0.10020003,  0.10100002]),\n",
       " 'mean_score_time': array([ 0.00099998,  0.00100002,  0.00120006,  0.00139999,  0.00099993,\n",
       "         0.00099998,  0.00099998]),\n",
       " 'mean_test_score': array([ 0.7630719 ,  0.75653595,  0.75816993,  0.76143791,  0.7630719 ,\n",
       "         0.72712418,  0.68627451]),\n",
       " 'mean_train_score': array([ 0.76960187,  0.76593342,  0.7642991 ,  0.76430077,  0.7642991 ,\n",
       "         0.75286885,  0.71531616]),\n",
       " 'param_C': masked_array(data = [0.001 0.01 0.1 1 10 100 1000],\n",
       "              mask = [False False False False False False False],\n",
       "        fill_value = ?),\n",
       " 'params': [{'C': 0.001},\n",
       "  {'C': 0.01},\n",
       "  {'C': 0.1},\n",
       "  {'C': 1},\n",
       "  {'C': 10},\n",
       "  {'C': 100},\n",
       "  {'C': 1000}],\n",
       " 'rank_test_score': array([1, 5, 4, 3, 1, 6, 7]),\n",
       " 'split0_test_score': array([ 0.76612903,  0.75      ,  0.75806452,  0.77419355,  0.77419355,\n",
       "         0.76612903,  0.76612903]),\n",
       " 'split0_train_score': array([ 0.76229508,  0.76844262,  0.76639344,  0.76844262,  0.76639344,\n",
       "         0.76434426,  0.76229508]),\n",
       " 'split1_test_score': array([ 0.76229508,  0.75409836,  0.75409836,  0.75409836,  0.76229508,\n",
       "         0.7295082 ,  0.64754098]),\n",
       " 'split1_train_score': array([ 0.76938776,  0.76938776,  0.76530612,  0.76530612,  0.76734694,\n",
       "         0.76938776,  0.7122449 ]),\n",
       " 'split2_test_score': array([ 0.78688525,  0.77868852,  0.7704918 ,  0.7704918 ,  0.7704918 ,\n",
       "         0.71311475,  0.73770492]),\n",
       " 'split2_train_score': array([ 0.77142857,  0.75918367,  0.76122449,  0.76326531,  0.76122449,\n",
       "         0.71836735,  0.71632653]),\n",
       " 'split3_test_score': array([ 0.7704918 ,  0.74590164,  0.75409836,  0.75409836,  0.75409836,\n",
       "         0.68852459,  0.60655738]),\n",
       " 'split3_train_score': array([ 0.76734694,  0.76326531,  0.75918367,  0.75714286,  0.76122449,\n",
       "         0.73877551,  0.67959184]),\n",
       " 'split4_test_score': array([ 0.7295082 ,  0.75409836,  0.75409836,  0.75409836,  0.75409836,\n",
       "         0.73770492,  0.67213115]),\n",
       " 'split4_train_score': array([ 0.77755102,  0.76938776,  0.76938776,  0.76734694,  0.76530612,\n",
       "         0.77346939,  0.70612245]),\n",
       " 'std_fit_time': array([ 0.        ,  0.0004898 ,  0.00063241,  0.00549912,  0.00101981,\n",
       "         0.0011662 ,  0.00063249]),\n",
       " 'std_score_time': array([  9.53674316e-08,   1.16800773e-07,   4.00018706e-04,\n",
       "          4.89979242e-04,   0.00000000e+00,   9.53674316e-08,\n",
       "          9.53674316e-08]),\n",
       " 'std_test_score': array([ 0.01872436,  0.01146275,  0.00633899,  0.00902903,  0.00826205,\n",
       "         0.0258426 ,  0.05852412]),\n",
       " 'std_train_score': array([ 0.00500091,  0.00407035,  0.00365829,  0.00399381,  0.00259215,\n",
       "         0.02106142,  0.02675154])}"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "grid_lrsvm.cv_results_"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.763071895425\n",
      "{'C': 0.001}\n"
     ]
    }
   ],
   "source": [
    "print(grid_lrsvm.best_score_)\n",
    "print(grid_lrsvm.best_params_)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "lrsvc=LinearSVC(C=0.01)\n",
    "lrsvc.fit(X_train,y_train)\n",
    "y_train_pred=lrsvc.predict(X_train)\n",
    "y_test_pred=lrsvc.predict(X_test)  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The accuracy of  LinearSVC on train is 0.763071895425\n",
      "The accuracy of LinearSVC on test is 0.779220779221\n"
     ]
    }
   ],
   "source": [
    "lrsvc_train_accuracy = accuracy_score(y_train, y_train_pred)\n",
    "lrsvc_test_accuracy = accuracy_score(y_test, y_test_pred)\n",
    "print 'The accuracy of  LinearSVC on train is', lrsvc_train_accuracy\n",
    "print 'The accuracy of LinearSVC on test is', lrsvc_test_accuracy"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "可以看出线性SVM与logistics回归的结果基本一致。原因猜测是逻辑回归损失函数是样本的似然函数，正则项是L2；而线性SVM虽然是从最优距离进行推导，但从目标函数的角度来看，它的损失是合页损失，正则也是L2。合页损失和逻辑损失的曲线表现形式也较为一致，逻辑回归通过非线性的方法度量不同样本的权重，所以两种方法从本质上都是样本权重损失加上L2的目标函数，因此收敛的效果应该一致。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 6、RBF核的SVM"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "GridSearchCV(cv=5, error_score='raise',\n",
       "       estimator=SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,\n",
       "  decision_function_shape='ovr', degree=3, gamma='auto', kernel='rbf',\n",
       "  max_iter=-1, probability=False, random_state=None, shrinking=True,\n",
       "  tol=0.001, verbose=False),\n",
       "       fit_params=None, iid=True, n_jobs=1,\n",
       "       param_grid={'C': [0.001, 0.01, 0.1, 1, 10, 100, 1000], 'gamma': [0.0001, 0.001, 0.01, 0.1, 1]},\n",
       "       pre_dispatch='2*n_jobs', refit=True, return_train_score='warn',\n",
       "       scoring='accuracy', verbose=0)"
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from sklearn.svm import SVC\n",
    "parameters_rbf = { 'gamma':[ 0.0001,0.001,0.01, 0.1, 1],'C':[0.001, 0.01, 0.1, 1, 10, 100, 1000]}\n",
    "estimator_rbf= SVC(kernel='rbf')\n",
    "grid_rbf= GridSearchCV(estimator_rbf,parameters_rbf,cv=5, scoring='accuracy')\n",
    "grid_rbf.fit(X_train,y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'mean_fit_time': array([ 0.01859994,  0.01739998,  0.01719999,  0.01900001,  0.01719995,\n",
       "         0.01720004,  0.01780005,  0.01760001,  0.01759996,  0.02380004,\n",
       "         0.01760001,  0.01739998,  0.0178    ,  0.01819997,  0.02660007,\n",
       "         0.02059999,  0.01779995,  0.01679997,  0.02179999,  0.03319998,\n",
       "         0.01900001,  0.01680002,  0.01940002,  0.0322    ,  0.04279995,\n",
       "         0.01719995,  0.01859999,  0.0362    ,  0.09560003,  0.04379997,\n",
       "         0.01900001,  0.03620009,  0.18740001,  0.40240006,  0.0454    ]),\n",
       " 'mean_score_time': array([ 0.00440001,  0.0046    ,  0.00440001,  0.00500007,  0.00420003,\n",
       "         0.00459995,  0.00479999,  0.00440001,  0.0046    ,  0.00699997,\n",
       "         0.00440001,  0.0046    ,  0.0046    ,  0.00400004,  0.00539999,\n",
       "         0.00480003,  0.00420003,  0.00400004,  0.00379996,  0.00580001,\n",
       "         0.00420003,  0.00380001,  0.00359998,  0.00379996,  0.00580001,\n",
       "         0.00380001,  0.00359998,  0.00300002,  0.00360003,  0.00479999,\n",
       "         0.00339999,  0.00359998,  0.00359998,  0.00359998,  0.00580001]),\n",
       " 'mean_test_score': array([ 0.65522876,  0.65522876,  0.65522876,  0.65522876,  0.65522876,\n",
       "         0.65522876,  0.65522876,  0.65522876,  0.65522876,  0.65522876,\n",
       "         0.65522876,  0.65522876,  0.65522876,  0.75      ,  0.65522876,\n",
       "         0.65522876,  0.65196078,  0.7630719 ,  0.76143791,  0.6879085 ,\n",
       "         0.65359477,  0.7630719 ,  0.75980392,  0.72875817,  0.67810458,\n",
       "         0.76470588,  0.75816993,  0.74673203,  0.70098039,  0.68300654,\n",
       "         0.76143791,  0.75980392,  0.74673203,  0.66339869,  0.68300654]),\n",
       " 'mean_train_score': array([ 0.65522917,  0.65522917,  0.65522917,  0.65522917,  0.65522917,\n",
       "         0.65522917,  0.65522917,  0.65522917,  0.65522917,  0.65522917,\n",
       "         0.65522917,  0.65522917,  0.65522917,  0.7573553 ,  0.65522917,\n",
       "         0.65522917,  0.65482101,  0.76388926,  0.80432753,  0.941181  ,\n",
       "         0.65645366,  0.76307293,  0.7736902 ,  0.8447725 ,  0.99713951,\n",
       "         0.7642991 ,  0.7634811 ,  0.79574774,  0.90768317,  1.        ,\n",
       "         0.76470726,  0.77491636,  0.82026263,  0.96568585,  1.        ]),\n",
       " 'param_C': masked_array(data = [0.001 0.001 0.001 0.001 0.001 0.01 0.01 0.01 0.01 0.01 0.1 0.1 0.1 0.1 0.1\n",
       "  1 1 1 1 1 10 10 10 10 10 100 100 100 100 100 1000 1000 1000 1000 1000],\n",
       "              mask = [False False False False False False False False False False False False\n",
       "  False False False False False False False False False False False False\n",
       "  False False False False False False False False False False False],\n",
       "        fill_value = ?),\n",
       " 'param_gamma': masked_array(data = [0.0001 0.001 0.01 0.1 1 0.0001 0.001 0.01 0.1 1 0.0001 0.001 0.01 0.1 1\n",
       "  0.0001 0.001 0.01 0.1 1 0.0001 0.001 0.01 0.1 1 0.0001 0.001 0.01 0.1 1\n",
       "  0.0001 0.001 0.01 0.1 1],\n",
       "              mask = [False False False False False False False False False False False False\n",
       "  False False False False False False False False False False False False\n",
       "  False False False False False False False False False False False],\n",
       "        fill_value = ?),\n",
       " 'params': [{'C': 0.001, 'gamma': 0.0001},\n",
       "  {'C': 0.001, 'gamma': 0.001},\n",
       "  {'C': 0.001, 'gamma': 0.01},\n",
       "  {'C': 0.001, 'gamma': 0.1},\n",
       "  {'C': 0.001, 'gamma': 1},\n",
       "  {'C': 0.01, 'gamma': 0.0001},\n",
       "  {'C': 0.01, 'gamma': 0.001},\n",
       "  {'C': 0.01, 'gamma': 0.01},\n",
       "  {'C': 0.01, 'gamma': 0.1},\n",
       "  {'C': 0.01, 'gamma': 1},\n",
       "  {'C': 0.1, 'gamma': 0.0001},\n",
       "  {'C': 0.1, 'gamma': 0.001},\n",
       "  {'C': 0.1, 'gamma': 0.01},\n",
       "  {'C': 0.1, 'gamma': 0.1},\n",
       "  {'C': 0.1, 'gamma': 1},\n",
       "  {'C': 1, 'gamma': 0.0001},\n",
       "  {'C': 1, 'gamma': 0.001},\n",
       "  {'C': 1, 'gamma': 0.01},\n",
       "  {'C': 1, 'gamma': 0.1},\n",
       "  {'C': 1, 'gamma': 1},\n",
       "  {'C': 10, 'gamma': 0.0001},\n",
       "  {'C': 10, 'gamma': 0.001},\n",
       "  {'C': 10, 'gamma': 0.01},\n",
       "  {'C': 10, 'gamma': 0.1},\n",
       "  {'C': 10, 'gamma': 1},\n",
       "  {'C': 100, 'gamma': 0.0001},\n",
       "  {'C': 100, 'gamma': 0.001},\n",
       "  {'C': 100, 'gamma': 0.01},\n",
       "  {'C': 100, 'gamma': 0.1},\n",
       "  {'C': 100, 'gamma': 1},\n",
       "  {'C': 1000, 'gamma': 0.0001},\n",
       "  {'C': 1000, 'gamma': 0.001},\n",
       "  {'C': 1000, 'gamma': 0.01},\n",
       "  {'C': 1000, 'gamma': 0.1},\n",
       "  {'C': 1000, 'gamma': 1}],\n",
       " 'rank_test_score': array([19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,  9, 19, 19, 35,\n",
       "         2,  4, 14, 34,  2,  6, 12, 17,  1,  8, 10, 13, 15,  4,  6, 10, 18,\n",
       "        15]),\n",
       " 'split0_test_score': array([ 0.65322581,  0.65322581,  0.65322581,  0.65322581,  0.65322581,\n",
       "         0.65322581,  0.65322581,  0.65322581,  0.65322581,  0.65322581,\n",
       "         0.65322581,  0.65322581,  0.65322581,  0.75806452,  0.65322581,\n",
       "         0.65322581,  0.65322581,  0.75806452,  0.76612903,  0.65322581,\n",
       "         0.65322581,  0.75806452,  0.76612903,  0.73387097,  0.66129032,\n",
       "         0.75806452,  0.76612903,  0.76612903,  0.71774194,  0.65322581,\n",
       "         0.76612903,  0.76612903,  0.76612903,  0.66935484,  0.65322581]),\n",
       " 'split0_train_score': array([ 0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.6557377 ,  0.7602459 ,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.76434426,  0.80122951,  0.94672131,\n",
       "         0.6557377 ,  0.76434426,  0.7704918 ,  0.84631148,  0.99590164,\n",
       "         0.76639344,  0.76434426,  0.79098361,  0.91188525,  1.        ,\n",
       "         0.76639344,  0.77254098,  0.82172131,  0.96516393,  1.        ]),\n",
       " 'split1_test_score': array([ 0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.6557377 ,  0.74590164,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.74590164,  0.76229508,  0.68032787,\n",
       "         0.6557377 ,  0.74590164,  0.73770492,  0.7295082 ,  0.70491803,\n",
       "         0.75409836,  0.75409836,  0.7295082 ,  0.71311475,  0.71311475,\n",
       "         0.75409836,  0.73770492,  0.74590164,  0.66393443,  0.71311475]),\n",
       " 'split1_train_score': array([ 0.65510204,  0.65510204,  0.65510204,  0.65510204,  0.65510204,\n",
       "         0.65510204,  0.65510204,  0.65510204,  0.65510204,  0.65510204,\n",
       "         0.65510204,  0.65510204,  0.65510204,  0.75510204,  0.65510204,\n",
       "         0.65510204,  0.65306122,  0.76938776,  0.8122449 ,  0.94285714,\n",
       "         0.65510204,  0.76530612,  0.77959184,  0.84081633,  1.        ,\n",
       "         0.76530612,  0.76938776,  0.8       ,  0.90816327,  1.        ,\n",
       "         0.76734694,  0.77959184,  0.82040816,  0.97142857,  1.        ]),\n",
       " 'split2_test_score': array([ 0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.6557377 ,  0.77868852,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.79508197,  0.77868852,  0.68032787,\n",
       "         0.6557377 ,  0.80327869,  0.78688525,  0.7295082 ,  0.69672131,\n",
       "         0.80327869,  0.7704918 ,  0.74590164,  0.70491803,  0.69672131,\n",
       "         0.7704918 ,  0.78688525,  0.75409836,  0.68852459,  0.69672131]),\n",
       " 'split2_train_score': array([ 0.65510204,  0.65510204,  0.65510204,  0.65510204,  0.65510204,\n",
       "         0.65510204,  0.65510204,  0.65510204,  0.65510204,  0.65510204,\n",
       "         0.65510204,  0.65510204,  0.65510204,  0.74897959,  0.65510204,\n",
       "         0.65510204,  0.65510204,  0.75306122,  0.79795918,  0.93061224,\n",
       "         0.65510204,  0.75918367,  0.76326531,  0.84693878,  0.99795918,\n",
       "         0.75714286,  0.75714286,  0.79387755,  0.91020408,  1.        ,\n",
       "         0.76122449,  0.76530612,  0.81632653,  0.95918367,  1.        ]),\n",
       " 'split3_test_score': array([ 0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.6557377 ,  0.74590164,  0.6557377 ,\n",
       "         0.6557377 ,  0.64754098,  0.7704918 ,  0.77868852,  0.72131148,\n",
       "         0.64754098,  0.76229508,  0.75409836,  0.73770492,  0.67213115,\n",
       "         0.76229508,  0.75409836,  0.7704918 ,  0.68852459,  0.71311475,\n",
       "         0.76229508,  0.75409836,  0.7704918 ,  0.68032787,  0.71311475]),\n",
       " 'split3_train_score': array([ 0.65510204,  0.65510204,  0.65510204,  0.65510204,  0.65510204,\n",
       "         0.65510204,  0.65510204,  0.65510204,  0.65510204,  0.65510204,\n",
       "         0.65510204,  0.65510204,  0.65510204,  0.76530612,  0.65510204,\n",
       "         0.65510204,  0.65510204,  0.76326531,  0.80612245,  0.93469388,\n",
       "         0.65510204,  0.76122449,  0.7755102 ,  0.84285714,  0.99591837,\n",
       "         0.76122449,  0.75918367,  0.78979592,  0.9       ,  1.        ,\n",
       "         0.76122449,  0.78163265,  0.81836735,  0.96122449,  1.        ]),\n",
       " 'split4_test_score': array([ 0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,  0.6557377 ,\n",
       "         0.6557377 ,  0.6557377 ,  0.6557377 ,  0.72131148,  0.6557377 ,\n",
       "         0.6557377 ,  0.64754098,  0.74590164,  0.72131148,  0.70491803,\n",
       "         0.6557377 ,  0.74590164,  0.75409836,  0.71311475,  0.6557377 ,\n",
       "         0.74590164,  0.74590164,  0.72131148,  0.68032787,  0.63934426,\n",
       "         0.75409836,  0.75409836,  0.69672131,  0.6147541 ,  0.63934426]),\n",
       " 'split4_train_score': array([ 0.65510204,  0.65510204,  0.65510204,  0.65510204,  0.65510204,\n",
       "         0.65510204,  0.65510204,  0.65510204,  0.65510204,  0.65510204,\n",
       "         0.65510204,  0.65510204,  0.65510204,  0.75714286,  0.65510204,\n",
       "         0.65510204,  0.65510204,  0.76938776,  0.80408163,  0.95102041,\n",
       "         0.66122449,  0.76530612,  0.77959184,  0.84693878,  0.99591837,\n",
       "         0.77142857,  0.76734694,  0.80408163,  0.90816327,  1.        ,\n",
       "         0.76734694,  0.7755102 ,  0.8244898 ,  0.97142857,  1.        ]),\n",
       " 'std_fit_time': array([ 0.00185476,  0.00079992,  0.00040007,  0.00252979,  0.00039997,\n",
       "         0.00074838,  0.00116617,  0.00048984,  0.0004899 ,  0.00159999,\n",
       "         0.00048984,  0.00048992,  0.00040002,  0.00039992,  0.00149664,\n",
       "         0.00162485,  0.00039999,  0.00097972,  0.00231518,  0.00116611,\n",
       "         0.0020976 ,  0.00074835,  0.00048986,  0.00299329,  0.00116626,\n",
       "         0.00039997,  0.00080001,  0.00146978,  0.00947837,  0.00074835,\n",
       "         0.00126489,  0.00292577,  0.03124487,  0.04006297,  0.0017435 ]),\n",
       " 'std_score_time': array([  4.89784582e-04,   4.89940316e-04,   4.89881921e-04,\n",
       "          1.99999810e-03,   3.99923339e-04,   4.89804047e-04,\n",
       "          7.48366451e-04,   4.89881921e-04,   4.89940316e-04,\n",
       "          2.09757933e-03,   4.89881921e-04,   4.89842988e-04,\n",
       "          4.89842988e-04,   1.16800773e-07,   4.89940316e-04,\n",
       "          7.48379193e-04,   4.00042545e-04,   1.16800773e-07,\n",
       "          3.99971008e-04,   7.48264501e-04,   4.00042545e-04,\n",
       "          3.99994861e-04,   4.89862441e-04,   3.99971008e-04,\n",
       "          7.48391947e-04,   3.99994861e-04,   4.89862441e-04,\n",
       "          0.00000000e+00,   4.89901382e-04,   7.48366451e-04,\n",
       "          4.89862441e-04,   4.89862441e-04,   4.89862441e-04,\n",
       "          4.89959789e-04,   7.48264501e-04]),\n",
       " 'std_test_score': array([ 0.00100965,  0.00100965,  0.00100965,  0.00100965,  0.00100965,\n",
       "         0.00100965,  0.00100965,  0.00100965,  0.00100965,  0.00100965,\n",
       "         0.00100965,  0.00100965,  0.00100965,  0.01865504,  0.00100965,\n",
       "         0.00100965,  0.00371483,  0.01838087,  0.02107661,  0.0233823 ,\n",
       "         0.00317484,  0.02109509,  0.01626773,  0.00838216,  0.01940456,\n",
       "         0.01999036,  0.00892831,  0.01941296,  0.01432907,  0.03096196,\n",
       "         0.00651333,  0.01626773,  0.02642542,  0.02572818,  0.03096196]),\n",
       " 'std_train_score': array([ 0.00025427,  0.00025427,  0.00025427,  0.00025427,  0.00025427,\n",
       "         0.00025427,  0.00025427,  0.00025427,  0.00025427,  0.00025427,\n",
       "         0.00025427,  0.00025427,  0.00025427,  0.00541933,  0.00025427,\n",
       "         0.00025427,  0.00091369,  0.00597176,  0.00481914,  0.0075379 ,\n",
       "         0.00239808,  0.00245494,  0.00619482,  0.00249294,  0.00163517,\n",
       "         0.00483518,  0.00467375,  0.00546176,  0.00408667,  0.        ,\n",
       "         0.0028649 ,  0.00575014,  0.00279653,  0.00506778,  0.        ])}"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "grid_rbf.cv_results_"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.764705882353\n",
      "{'C': 100, 'gamma': 0.0001}\n"
     ]
    }
   ],
   "source": [
    "print(grid_rbf.best_score_)\n",
    "print(grid_rbf.best_params_)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "rbf=SVC(C= 100, gamma=0.001,kernel='rbf')\n",
    "rbf.fit(X_train,y_train)\n",
    "y_train_pred=rbf.predict(X_train)\n",
    "y_test_pred=rbf.predict(X_test)  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The accuracy of rbf on train is 0.766339869281\n",
      "The accuracy of rbf on test is 0.772727272727\n"
     ]
    }
   ],
   "source": [
    "rbf_train_accuracy = accuracy_score(y_train, y_train_pred)\n",
    "rbf_test_accuracy = accuracy_score(y_test, y_test_pred)\n",
    "print 'The accuracy of rbf on train is',rbf_train_accuracy\n",
    "print 'The accuracy of rbf on test is', rbf_test_accuracy"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.14"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
